999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種簡(jiǎn)易的總線傳輸協(xié)議

2014-05-15 00:29:56付長(zhǎng)英劉林海沈貴元常迎輝
無(wú)線電通信技術(shù) 2014年1期

付長(zhǎng)英,劉林海,沈貴元,常迎輝

(中國(guó)電子科技集團(tuán)公司第五十四研究所,河北 石家莊 050081)

0 引言

當(dāng)前,SoC設(shè)計(jì)已經(jīng)成為數(shù)字集成電路(Integrated Circuit,IC)設(shè)計(jì)的主流。一款SoC設(shè)計(jì)至少包含一顆微處理器核心,同時(shí)也包含不同類型、數(shù)量的外設(shè)接口模塊,以及用戶定制的邏輯電路。隨著SoC的規(guī)模不斷擴(kuò)大,集成的IP模塊不斷增多,復(fù)雜度不斷加大,使得各個(gè)模塊之間通信的問(wèn)題越來(lái)越突出。在片上系統(tǒng)領(lǐng)域中,主機(jī)與從機(jī)之間的通信需要考慮的因素很多,例如總線位寬、速率、實(shí)現(xiàn)難易程度等。因此,設(shè)計(jì)一種簡(jiǎn)單易用的高速率傳輸總線是SoC設(shè)計(jì)初期著重考慮的。

1 三總線傳輸協(xié)議介紹

該總線傳輸協(xié)議是為了實(shí)現(xiàn)主機(jī)與從機(jī)之間的高速寄存器讀寫(xiě)操作,由3根信號(hào)線組成,分別是片選使能線、時(shí)鐘傳輸線、雙向數(shù)據(jù)傳輸線。片選使能線與雙向數(shù)據(jù)傳輸線復(fù)位之后默認(rèn)的狀態(tài)為高電平,時(shí)鐘傳輸線復(fù)位之后默認(rèn)的狀態(tài)為低電平。

1.1 總線傳輸數(shù)據(jù)的步驟

該傳輸總線傳輸時(shí),由主機(jī)首先拉低片選使能線;從機(jī)檢測(cè)到片選使能線為低之后,內(nèi)部產(chǎn)生啟動(dòng)信號(hào)。主機(jī)拉低片選使能線之后,產(chǎn)生總線時(shí)鐘,并通過(guò)時(shí)鐘傳輸線將時(shí)鐘傳輸給從機(jī);總線時(shí)鐘可以為主機(jī)內(nèi)部高頻時(shí)鐘的分頻時(shí)鐘,分頻比可為任意值。主機(jī)通過(guò)數(shù)據(jù)傳輸線發(fā)送數(shù)據(jù),數(shù)據(jù)可以為多個(gè)字節(jié);首先發(fā)送當(dāng)前字節(jié)的高位,由高位到低位依次發(fā)送,雙向數(shù)據(jù)傳輸線的變化位于時(shí)鐘的下降沿。從機(jī)在總線時(shí)鐘的上升沿開(kāi)始對(duì)數(shù)據(jù)進(jìn)行采樣,并按照收取到的數(shù)據(jù)進(jìn)行讀寫(xiě)操作。主機(jī)傳輸數(shù)據(jù)完畢之后,停止總線時(shí)鐘才產(chǎn)生,拉高片選使能線,結(jié)束該次傳輸。

當(dāng)主機(jī)發(fā)送數(shù)據(jù)與產(chǎn)生時(shí)鐘時(shí),主機(jī)每次發(fā)起的數(shù)據(jù)傳輸,總是以固定數(shù)值的傳輸時(shí)鐘周期為一組,當(dāng)從機(jī)接收到的時(shí)鐘周期不足一組時(shí),舍棄最后傳輸?shù)臄?shù)據(jù),數(shù)據(jù)傳輸完畢時(shí),最少包含兩組固定數(shù)值的傳輸時(shí)鐘周期。

如圖1是三總線傳輸協(xié)議的概略圖,片選使能線為100,時(shí)鐘傳輸線為200,雙向數(shù)據(jù)傳輸線為300,傳輸首字節(jié)為310,第2個(gè)字節(jié)為320,第3個(gè)字節(jié)為330。首字節(jié)中起始位為讀寫(xiě)使能311,后續(xù)數(shù)據(jù)位為起始地址312。

圖1 三總線傳輸協(xié)議概略圖

主機(jī)產(chǎn)生的分頻時(shí)鐘,分頻比包括1分頻,即傳輸時(shí)鐘與主機(jī)內(nèi)部時(shí)鐘同頻,最高可以達(dá)到電路接口頻率的最高值。

1.2 三總線傳輸協(xié)議的優(yōu)點(diǎn)

該總線傳輸協(xié)議與其他總線相比,具有如下優(yōu)點(diǎn):①總線位寬只有3位,通過(guò)雙向數(shù)據(jù)傳輸線滿足讀寫(xiě)的不同方向要求;②總線傳輸時(shí)鐘可以與主機(jī)內(nèi)部時(shí)鐘同頻,傳輸速度較高;③根據(jù)總線傳輸協(xié)議中的要求,可以只發(fā)送一次起始地址,之后的讀寫(xiě)操作均在此起始地址基礎(chǔ)上累加;④該總線傳輸協(xié)議比較簡(jiǎn)單,易于理解,可操作性強(qiáng),可以根據(jù)具體寄存器位寬進(jìn)行字節(jié)位寬的調(diào)整。

2 三總線傳輸協(xié)議的讀寫(xiě)操作

2.1 主機(jī)寫(xiě)從機(jī)操作

主機(jī)通過(guò)數(shù)據(jù)傳輸線發(fā)送數(shù)據(jù),當(dāng)主機(jī)需要對(duì)從機(jī)進(jìn)行寫(xiě)操作時(shí),首先需要發(fā)送的首字節(jié)為“寫(xiě)使能1”加“從機(jī)起始地址”,第2個(gè)字節(jié)為需要寫(xiě)入“從機(jī)起始地址”的數(shù)據(jù),第3個(gè)字節(jié)為需要寫(xiě)入“從機(jī)起始地址+1”的數(shù)據(jù),以此類推,第N個(gè)字節(jié)為需要寫(xiě)入“從機(jī)起始地址+N-2”的數(shù)據(jù)。其中,N為字節(jié)的個(gè)數(shù)。

圖2是三總線傳輸協(xié)議主機(jī)寫(xiě)從機(jī)的流程圖。圖中片選使能線為100,雙向數(shù)據(jù)傳輸線為300.首字節(jié)為310,第2個(gè)傳輸字節(jié)320為寫(xiě)入起始地址的數(shù)據(jù),第3個(gè)傳輸字節(jié)330為寫(xiě)入起始地址加一的數(shù)據(jù),第3個(gè)傳輸字節(jié)340為寫(xiě)入起始地址加二的數(shù)據(jù),第N個(gè)傳輸字節(jié)350為寫(xiě)入起始地址+(N-2)數(shù)據(jù)。首字節(jié)高位為寫(xiě)使能311,首字節(jié)低位為起始地址312。

圖2 主機(jī)寫(xiě)從機(jī)流程圖

2.2 主機(jī)讀從機(jī)操作

當(dāng)主機(jī)需要對(duì)從機(jī)進(jìn)行讀操作時(shí),首先需要發(fā)送的首字節(jié)為“讀使能0”加“從機(jī)起始地址”,之后主機(jī)將雙向數(shù)據(jù)傳輸線交予從機(jī)進(jìn)行控制,主機(jī)只需要產(chǎn)生傳輸時(shí)鐘,從機(jī)由該傳輸時(shí)鐘進(jìn)行數(shù)據(jù)的發(fā)出;當(dāng)主機(jī)發(fā)出讀取的命令之后,由于從機(jī)接收到命令之后需要解析出指令時(shí)間,需要延時(shí)一個(gè)字節(jié)時(shí)間,在第3個(gè)字節(jié)時(shí)間將“從機(jī)起始地址”的數(shù)據(jù)傳輸給主機(jī),第4個(gè)字節(jié)時(shí)間將“從機(jī)起始地址+1”的數(shù)據(jù)傳輸給主機(jī),以此類推,第N個(gè)字節(jié)時(shí),主機(jī)由雙向數(shù)據(jù)傳輸線讀取到的為“從機(jī)起始地址+N-3”的數(shù)據(jù);其中,一個(gè)字節(jié)時(shí)間為固定數(shù)值的傳輸時(shí)鐘。

圖3是本設(shè)計(jì)的三總線傳輸協(xié)議主機(jī)讀從機(jī)寄存器狀態(tài)流程圖。圖中片選使能線為100,雙向數(shù)據(jù)傳輸線為300。首字節(jié)為310,第2個(gè)傳輸字節(jié)320為空閑周期,第3個(gè)傳輸字節(jié)330為起始讀地址的寄存器狀態(tài)值,第4個(gè)傳輸字節(jié)340為起始讀地址加1的寄存器狀態(tài)值,第N個(gè)傳輸字節(jié)350為起始讀地址+(N-3)的寄存器狀態(tài)值。首字節(jié)高位為讀使能311,首字節(jié)低七位為起始讀地址312。第2個(gè)傳輸字節(jié)320為用于主機(jī)、從機(jī)之間的雙向數(shù)據(jù)傳輸線的傳輸方向轉(zhuǎn)變。

圖3 主機(jī)讀從機(jī)流程圖

2.3 從機(jī)解析主機(jī)寫(xiě)操作

圖4是設(shè)計(jì)的三總線傳輸從機(jī)解析主機(jī)寫(xiě)操作的原理圖。空閑狀態(tài)為A,主機(jī)將片選拉低為A1,從機(jī)進(jìn)行數(shù)據(jù)采樣為B,主從傳輸?shù)氖鬃止?jié)為C,首字節(jié)高位判斷器為C1,打開(kāi)寫(xiě)使能操作為D,從機(jī)進(jìn)行時(shí)鐘上升沿采樣操作為E,片選為高判斷器為E1,字節(jié)收取完成判斷器為E2,寫(xiě)入當(dāng)前加一地址操作為E3。

圖4 從機(jī)解析主機(jī)寫(xiě)操作原理圖

2.4 從機(jī)解析主機(jī)讀操作

圖5是設(shè)計(jì)的三總線傳輸協(xié)議從機(jī)解析主機(jī)讀操作的原理圖。空閑狀態(tài)為A,片選拉低為A1,從機(jī)進(jìn)行數(shù)據(jù)采樣為B,主從傳輸?shù)氖鬃止?jié)為C,首字節(jié)高位判斷其為C1,打開(kāi)讀使能操作為G,等待一個(gè)字節(jié)時(shí)間為H,片選為高判斷器為H1,發(fā)送當(dāng)前加一地址的寄存器狀態(tài)操作為I。

圖5 從機(jī)解析主機(jī)讀操作原理圖

3 總線模塊設(shè)計(jì)及RTL實(shí)現(xiàn)

本文涉及的總線是通信處理芯片的MCU接口,主要功能是接收MCU的控制和發(fā)送芯片的告警,MCU的總線作為主設(shè)備,通信處理芯片的總線接口作為從設(shè)備。根據(jù)功能需求,設(shè)計(jì)簡(jiǎn)化了總線的完整協(xié)議,僅實(shí)現(xiàn)了從模式。采用VHDL語(yǔ)言實(shí)現(xiàn),用Modelsim對(duì)總線的讀寫(xiě)操作進(jìn)行了仿真驗(yàn)證。

總線接口信號(hào)定義如圖6所示。rst_125信號(hào)是外部提供的硬件復(fù)位信號(hào),低電平復(fù)位有效;CSN為總線訪問(wèn)使能信號(hào),低電平有效;SCLK為總線訪問(wèn)輸入串行時(shí)鐘;MOSI為總線訪問(wèn)輸入串行數(shù)據(jù);MISO為總線訪問(wèn)輸出串行數(shù)據(jù);wr_addr[7:0]信號(hào)是通過(guò)總線接口操作內(nèi)部寄存器的地址信息,wr_data[7:0]信號(hào)為外部MCU通過(guò)總線訪問(wèn)寄存器讀出的數(shù)據(jù),隨地址wr_addr[7:0]的變化而變化;rd_data[7:0]信號(hào)為外部MCU通過(guò)總線接口寫(xiě)入寄存器的數(shù)據(jù),wd_reg為寫(xiě)使能,wd_reg信號(hào)為高時(shí),在SCLK的上升沿把rd_data[7:0]數(shù)據(jù)寫(xiě)入到wr_addr[7:0]的地址中;rd_reg為讀使能信號(hào),wd_reg為寫(xiě)使能信號(hào)。

圖6 總線頂層模塊接口定義

在CSN為低時(shí),判斷時(shí)鐘的上升沿,8個(gè)上升沿對(duì)輸入的數(shù)據(jù)進(jìn)行采樣;第一個(gè)沿采到的數(shù)據(jù)指示的是讀(1)/寫(xiě)(0),之后的7個(gè)數(shù)組合成為當(dāng)前地址;如果是寫(xiě),就寫(xiě)入當(dāng)前地址;繼續(xù)接收就寫(xiě)入下一地址;如果是讀,就讀出當(dāng)前地址數(shù)據(jù),繼續(xù)就可以讀出后一地址數(shù)據(jù);通過(guò)總線傳輸?shù)臄?shù)據(jù),從高位先發(fā),存入接收寄存器r_shift[7:0];發(fā)送的時(shí)候,也是先發(fā)高位,通過(guò)發(fā)送寄存器t_shift[7:0]發(fā)送。

用VHDL語(yǔ)言編寫(xiě)testbench對(duì)總線模塊進(jìn)行測(cè)試,部分測(cè)試代碼如下:

procedure spi_tr(

shift:in std_logic_vector(7downto 0);

signal rdata:out std_logic_vector(7downto 0);

signal SCLK:out std_logic;

signal MOSI:out std_logic;

signal MISO:in std_logic

)is

begin

rdata<=x"00";

SCLK<=‘1’;

MOSI<=‘1’;

wait for30 ns;

SCLK<=‘0’;—第1個(gè)數(shù)據(jù)

wait for30 ns;

MOSI<=shift(7);

rdata(7)<=MISO;

……

SCLK<=‘0’;—第8個(gè)數(shù)據(jù)

rdata(0)<=MISO;

wait for30 ns;

SCLK<=‘1’;

wait for30 ns;

MOSI<=‘1’;

wait for30 ns;

end spi_tr;

仿真測(cè)試部分結(jié)果如圖7所示。

圖7 總線讀寫(xiě)操作仿真驗(yàn)證結(jié)果

4 結(jié)束語(yǔ)

設(shè)計(jì)的傳輸協(xié)議只有3根總線,采用VHDL語(yǔ)言實(shí)現(xiàn)硬件電路,并通過(guò)Modelsim驗(yàn)證了協(xié)議的正確性。讀寫(xiě)過(guò)程簡(jiǎn)單明了,易于理解,針對(duì)不同位寬的寄存器,可以根據(jù)位寬和地址深度的要求定制從機(jī)對(duì)首字節(jié)的解析模塊,以滿足各自設(shè)計(jì)的特定需求,非常適合芯片之間的通信。

[1]張斌,劉宇,榮金峰.通用型SPI總線的IP設(shè)計(jì)與實(shí)現(xiàn)[J].中國(guó)集成電路,2011,7(146):43-46.

[2]周強(qiáng).超大規(guī)模集成電路設(shè)計(jì)導(dǎo)論[M].北京:清華大學(xué)出版社,2005.

[3]侯伯亨,顧新.VHDL硬件描述語(yǔ)言與數(shù)字邏輯電路設(shè)計(jì)[M].西安電子科技大學(xué)出版社,1999.

[4]王玨文,金偉信,蔡一兵,等.基于FPGA的SPI總線接口的實(shí)現(xiàn)[J].總線與網(wǎng)絡(luò),2010,14(325):102-104.

[5]王二萍.高速可復(fù)用SPI總線的設(shè)計(jì)與VerilogHDL實(shí)現(xiàn)[D].鄭州:河南大學(xué),2007:70-77.

[6]趙杰.基于AMBA總線的SPI協(xié)議IP核的實(shí)現(xiàn)與驗(yàn)證[D].中國(guó)科技大學(xué),2009:22-25.

[7]高如云,陸曼茹,張企民.通信電子線路[M].西安:西安電子科技大學(xué)出版社,2008.

[8]榮蓉.基于SOC嵌入式片上系統(tǒng)應(yīng)用研究[J].煤炭技術(shù),2012,31(6):218-219.

[9]劉林海.AHB總線分析及從模塊設(shè)計(jì)[J].無(wú)線電通信技術(shù),2007,33(3):35-38.

[10]朱宏光,司靜.一種用于高速數(shù)據(jù)采集的SDRAM控制器[J].無(wú)線電工程,2010,40(4):62-64.

主站蜘蛛池模板: 亚洲伊人天堂| 激情国产精品一区| 亚洲国产亚综合在线区| 四虎永久在线视频| 亚洲日本中文综合在线| 色香蕉影院| 亚洲欧美在线精品一区二区| 国产成人亚洲精品无码电影| 91无码网站| 国产福利免费视频| 亚洲国产中文精品va在线播放| 亚洲性色永久网址| 国产毛片片精品天天看视频| 福利小视频在线播放| 成人一级黄色毛片| 亚洲视频免费在线看| 在线观看免费国产| 国产精品青青| 在线中文字幕日韩| 中文字幕亚洲专区第19页| 亚洲开心婷婷中文字幕| 99久久精品久久久久久婷婷| 国产精品页| 巨熟乳波霸若妻中文观看免费| 亚洲色图欧美激情| 国产91小视频| 广东一级毛片| 日韩毛片在线视频| 中文字幕在线日本| 国产精品亚洲片在线va| 日本在线欧美在线| 欧洲高清无码在线| 国产精品lululu在线观看| 高清色本在线www| 综合久久五月天| 日本欧美一二三区色视频| 视频一区亚洲| 97在线公开视频| 天天综合色天天综合网| 欧美中文字幕在线视频| 天天做天天爱天天爽综合区| 亚洲精品中文字幕午夜| 日本人妻一区二区三区不卡影院| 综合久久久久久久综合网| 夜夜操天天摸| 亚洲一区二区精品无码久久久| 亚洲免费人成影院| 国内精品视频| 国产欧美日韩另类精彩视频| 草草影院国产第一页| 国产成人一区免费观看| 狠狠亚洲婷婷综合色香| 伊人成人在线| 亚洲天堂久久久| 熟妇人妻无乱码中文字幕真矢织江 | 国产亚洲成AⅤ人片在线观看| 亚洲无码视频一区二区三区| 亚洲国产欧美中日韩成人综合视频| 日本高清免费一本在线观看| 无码中文字幕乱码免费2| 国产精品女人呻吟在线观看| 在线无码九区| 国产丝袜91| 欧美日本一区二区三区免费| 精品国产网| av在线5g无码天天| 婷婷亚洲天堂| 日本道综合一本久久久88| 色丁丁毛片在线观看| 亚洲天堂伊人| 国产在线一二三区| 国产污视频在线观看| 国产精品亚洲欧美日韩久久| 日本免费高清一区| 国内黄色精品| 色AV色 综合网站| 色九九视频| 欧美成人一区午夜福利在线| 国产综合日韩另类一区二区| 国产亚洲精品自在线| 亚洲日韩欧美在线观看| 亚洲美女视频一区|