新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 片上總線Wishbone 學習(九)總線周期之單次寫操作

        片上總線Wishbone 學習(九)總線周期之單次寫操作

        作者: 時間:2016-12-15 來源:網絡 收藏
        異步周期結束方式
        單次寫操作如圖1所示。

        在時鐘上升沿0,主設備將地址信號ADR_O()、TGA_O()放到總線上,將數據信號DAT_O()、TGD_O()放到總線上,將WE_O置高表示寫操作,將適當的SEL_O()信號置高通知從設備數據總線DAT_O()的哪些信號是有效的,將CYC_O和TGC_O置高表示操作正在進行,將STB_O置高表示操作開始。

        本文引用地址:http://www.104case.com/article/201612/330213.htm

        在時鐘上升沿1到達之前,從設備檢測到主設備發起的操作,將主設備的ACK_I置高作為對主設備STB_O的響應。

        在時鐘上升沿1,從設備將DAT_I()和TGD_I()采樣;主設備發現ACK_I信號為高,將STB_O和CYC_O置為低表示操作完成;從設備發現STB_O置低后,也將主設備的ACK_I置低。

        在圖1中,從設備可以在上升沿0和上升沿1之間插入任意多個等待周期。

        圖1Wishbone總線的單次寫操作(周期異步結束方式)

        同步周期結束方式
        圖2Wishbone總線的單次寫操作(周期同步結束方式)

        在時鐘上升沿0:
        • Master在[ADR_O()]和[TGA_O()]發出有效的地址
        • Master在[DAT_O()]和[TGD_O()]發出數據
        • Master發出[WE_O],表明是一個寫周期
        • Master發出有效數據選擇信號[SEL_O()]表明哪些數據是有效的
        • Master發出[CYC_O]和[TGC_O()]表明總線周期的開始
        • Master發出[STB_O]表明操作的開始
        在時鐘上升沿1:
        • Slave檢測到主設備發起的操作,準備發出[ACK_I]
        • Slave準備鎖存[DAT_O]和[TGD_O()]
        • Slave發出[ACK_I]應答[STB_O],表明數據有效,可以讀取數據了
        • Master發現[ACK_I],準備結束總線周期
        注意:Slave可以在發出[ACK_I]前插入等待周期(-WSS-),以控制傳速度。可以插入任意多個等待周期。
        在時鐘上升沿2:
        • Slave鎖存[DAT_I]和[TGD_I()]
        • Master拉低[STB_O]和[CYC_O],表明總線周期的結束
        • Slave發現Master拉低[STB_O],也將[ACK_I]拉低



        評論


        技術專區

        關閉
        主站蜘蛛池模板: 都安| 五峰| 兴和县| 维西| 孝义市| 丽水市| 理塘县| 双鸭山市| 黄浦区| 茂名市| 息烽县| 崇礼县| 屯门区| 灌阳县| 东平县| 潮安县| 泾川县| 汨罗市| 团风县| 醴陵市| 鱼台县| 沅陵县| 江北区| 永新县| 高邑县| 尉犁县| 舞钢市| 泽库县| 阳江市| 通州市| 张家界市| 五峰| 建平县| 石首市| 固原市| 无极县| 鸡泽县| 门源| 九台市| 鄂伦春自治旗| 青神县|