新聞中心

EEPW首頁(yè) > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于SOPC的嵌入式高速串口設(shè)計(jì)(06-100)

基于SOPC的嵌入式高速串口設(shè)計(jì)(06-100)

——
作者:重慶大學(xué) 通信工程學(xué)院 何偉 張慧敏 張玲 時(shí)間:2008-04-02 來(lái)源:電子產(chǎn)品世界 收藏

  用戶定義的Avalon總線模塊設(shè)計(jì)

本文引用地址:http://2s4d.com/article/81083.htm

  NiosII是基于RISC技術(shù)的通用處理器芯片軟內(nèi)核,它特別為可編程邏輯進(jìn)行了優(yōu)化設(shè)計(jì),也為可編程單芯片系統(tǒng)設(shè)計(jì)了一套綜合解決方案。Avalon總線是一種高效的總線結(jié)構(gòu),主要用于連接片內(nèi)處理器NiosII和各種外設(shè)IP core,以構(gòu)成可編程系統(tǒng)芯片()。數(shù)據(jù)幀發(fā)送電路和數(shù)據(jù)幀接收電路通過(guò)Avalon總線和NiosII處理器連接在一起,Avalon總線規(guī)范定義了主端口和從端口之間通過(guò)Avalon總線模塊傳輸數(shù)據(jù)所需的信號(hào)和時(shí)序。設(shè)計(jì)時(shí)通信模塊采用從端口傳輸模式,數(shù)據(jù)幀發(fā)送電路采用具有外設(shè)控制等待周期的從端口寫傳輸模式,發(fā)送電路除串行數(shù)據(jù)輸出線外,還必須提供符合Avalon總線傳輸要求的信號(hào)線,即Address、Writedata(31..0)、Write_n、Chipselect、Waitrequest,與NiosII工作同步的時(shí)鐘信號(hào)clk,當(dāng)CPU要發(fā)送數(shù)據(jù)時(shí),將Address、Write_n信號(hào)有效,同時(shí)將要發(fā)送的32位數(shù)據(jù)裝載到Writedata(31..0)上,而同步時(shí)鐘clk一直處于工作狀態(tài),當(dāng)clk上升沿判斷到以上信號(hào)有效后,Avalon總線對(duì)Address譯碼,然后置Chipselect有效,而發(fā)送電路VHDL程序設(shè)計(jì)時(shí)必須判斷Address、Chipselect是否有效,如果有效,則在下一個(gè)clk上升沿前將Waitrequest置為無(wú)效,數(shù)據(jù)傳送電路就從Avalon總線獲取Writedata數(shù)據(jù),如果Waitrequest有效,則這個(gè)總線周期就成為等待周期,其他信號(hào)以及數(shù)據(jù)信號(hào)保持不變,但外設(shè)必須保證不會(huì)使Waitrequest無(wú)限期地保持有效,這樣會(huì)使得一個(gè)從外設(shè)能夠?qū)valon總線永久“掛起”,其連接關(guān)系和時(shí)序關(guān)系如圖4所示。同理,數(shù)據(jù)接收電路采用具有外設(shè)控制等待周期的從端口讀傳輸模式,可以將串轉(zhuǎn)并后的數(shù)據(jù)送入到NiosII中進(jìn)行處理。


  
  軟件設(shè)計(jì)

  基于NiosII的C語(yǔ)言設(shè)計(jì),可以采用單線程模式,也可采用uc/基于NiosII的C語(yǔ)言設(shè)計(jì),可以采用單線程模式,也可采用uc/OSII多任務(wù)操作系統(tǒng)。這里對(duì)接收和發(fā)送的數(shù)據(jù)處理主要采用以下指令實(shí)現(xiàn),“IORD(base, 1)”讀指令,其中base就是需要讀取的外設(shè)基地址,數(shù)據(jù)接收電路作為外設(shè)在建立 Builder時(shí)定義的名稱為“user_uart_rxd”,則base應(yīng)改為“user_uart_rxd_base”,而第2個(gè)參數(shù)‘1’表示其偏移地址;“IOWR(base, 1, data)”寫指令,其中base是需寫入外設(shè)基地址,數(shù)據(jù)發(fā)送電路作為外設(shè)在建立 Builder時(shí)定義的名稱為“user_uart_txd”, 則base應(yīng)改為“user_uart_txd_base”,而第2個(gè)參數(shù)‘1’表示其偏移地址,第3個(gè)參數(shù)data是發(fā)送數(shù)據(jù)。

  計(jì)算機(jī)仿真波形如圖5、圖6所示。它們之間的時(shí)序關(guān)系參照本文的第二部分。

  結(jié)語(yǔ)

  運(yùn)用此5Mbit/s的UART進(jìn)行通信,效果十分穩(wěn)定、可靠性高,傳輸速度快,采用RS485接口模式傳輸距離遠(yuǎn),同時(shí)不易被干擾以至出現(xiàn)誤碼、丟數(shù)據(jù)、丟幀等情況。因此采用SOPC系統(tǒng)設(shè)計(jì)技術(shù)可以實(shí)現(xiàn)系統(tǒng)設(shè)計(jì)的小型化、集成化和高可靠性,還可以減少風(fēng)險(xiǎn)、降低成本、縮短開(kāi)發(fā)周期。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: SOPC 嵌入式 串口

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉