《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > 基于LX9 Microboard的RS232的wishbone總線控制器設(shè)計
基于LX9 Microboard的RS232的wishbone總線控制器設(shè)計
摘要: 基于LX9Microboard的RS232的wishbone總線控制器設(shè)計前言:對FPGA的板極調(diào)試,,對于大部分的工程師都是一個比較麻煩的事,。這樣子的事情在開發(fā)的初期階段尤其突顯。我就常常有這樣子的困擾,,比如說,,對于一個SDRA
Abstract:
Key words :

前言:對FPGA的板極調(diào)試,,對于大部分的工程師都是一個比較麻煩的事。這樣子的事情在開發(fā)的初期階段尤其突顯,。我就常常有這樣子的困擾,,比如說,,對于一個SDRAM,我希望從我的PC發(fā)送一個指令,,可以使得FPGASDRAM進行寫操作或者讀操作,,對于我還不是很熟悉的芯片,雖然我拿到硬件,,也熟讀了數(shù)據(jù)手冊,,但我還是希望可以實時配置它,驗證它的功能,。就這樣子,,趁著這個機會設(shè)計與驗證了基于RS232wishbone控制器

 

對于PCFPGA通信,,首先想到的當(dāng)然是RS232了,,即使說它的速度跟性能無法都跟其它的通信方式相比,但是,,有兩點讓我們無法舍棄它:簡單,、穩(wěn)定。LX9 Microboard上邊的USB-UART更是使得RS232擺脫了DB9這樣龐大的接口器件以及使你不需要到處去找串口連接線,,畢竟現(xiàn)在來說,,找一個串口線比找一個USB線要困難n倍。對于FPGA內(nèi)部總線,,我當(dāng)然是選擇了wishbone總線,,相關(guān)的總線協(xié)議,可以參考資料:Combining WISHBONE interface signals.pdf 百度之即可,。推薦中文介紹網(wǎng)頁:

http://www.shangshuwu.cn/index.php/OpenRisc_CPU%E7%9A%84Wishbone%E7%89%87%E4%B8%8A%E6%80%BB%E7%BA%BF

最推薦的方式當(dāng)然是:www.opencores.org 了。

 

一,、控制器設(shè)計框圖:

 

 

 

二,、發(fā)送接收方式

其中,每次發(fā)送數(shù)據(jù)之前,,發(fā)送幾個數(shù)據(jù),,表明是wishbone總線,我采用的方式是:

 

 

當(dāng)數(shù)據(jù)八位八位的接受了之后,,使用狀態(tài)機提取地址以及數(shù)據(jù)即可,。

 

三、仿真

仿真圖如下:使用uartmodel往設(shè)計模塊寫入地址以及數(shù)據(jù)

32'h0001_0108 , 32'h0000_0041

32'h0001_01ff , 32'h0000_0001

32'h0001_0109 , 32'h0000_00d1

32'h0001_0103 , 32'h0000_0006

32'h0001_0109 , 32'h0000_00c0                                               

32'h0000_0010 , 32'h0000_000E

32'h0000_0011 , 32'h0000_00E8

32'h0000_0012 , 32'h0000_00A8

32'h0000_0013 , 32'h0000_00C8

32'h0000_0014 , 32'h0000_00C6

32'h0000_0015 , 32'h0000_0005

32'h0000_0016 , 32'h0000_00c2

32'h0000_0017 , 32'h0000_0002

 

 

因為時間倉促,,接收模塊還沒有怎么寫好,,只是實現(xiàn)了從RS232wishbone總線單向。

 

 

四,、板極功能驗證:

首先,,當(dāng)然要調(diào)通串口啦,。安裝USB-UART驅(qū)動以及下載驅(qū)動,這個直接看開發(fā)板資料就可以了,,寫的非常清楚明了,。串口測試是否正常,我是是使用了我很久以前寫的兩個個VHDL文件,,只有直接發(fā)送模塊,,這些模塊,在網(wǎng)絡(luò)上應(yīng)該到處都是,。然后分別在電腦串口軟件以及chipscope上觀察數(shù)據(jù)是否正確即可,,這個大家應(yīng)該都蠻熟的了。

然后,,把自己曾經(jīng)用到的IP放進去,。為了方便使用示波器觀察數(shù)據(jù),我把一個I2C模塊以及一個SPI配置的DAC ( TLV5626 )的模塊放進去,,然后輸出到保留引腳上,。

下面是應(yīng)用仿真

 

建立工程以及綜合下載那些瑣碎事,就不在這里多扯了,。

 

結(jié)果驗證:

下面是示波器觀察I2C的結(jié)果:

 

 

可以對比仿真結(jié)果與示波器的觀察結(jié)果,,是一致的。

總結(jié):最近忙的東西比較多,,時間也比較有限,,自己對嵌入式那一塊也不是很熟,所以感覺沒辦怎么用到這個板子比較高級的地方,,其實,,如果可以做一個網(wǎng)口控制器的話,那就相當(dāng)?shù)?/span>high,。

 

DB

2011.8.24

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。