一種基于FPGA的PXA270外設時(shí)序轉換接口設計

圖5為批數據從WRRAM向外設傳送的連續時(shí)鐘產(chǎn)生和自動(dòng)地址生成原理圖。其中,lpm_counter0為帶有異步清零和進(jìn)位信號的增計數; AutoAccessDataNumsOnce在EN='1'時(shí),產(chǎn)生一次批傳送時(shí)鐘,根據COM20020的長(cháng)短數據包傳送要求,在CCESSTYPE =‘1’時(shí)傳送長(cháng)數據包(512 B),否則傳送短數據包(256 B)。FRE信號同時(shí)提供WRRAM的rdclock和lpm_counter0的clock信號。
圖6為一次批數據向RAM中寫(xiě),而后啟動(dòng)DMA傳輸,將數據從RAM送至COM20020的時(shí)序仿真。在WRCLOCK上升沿時(shí),RAM將datain總線(xiàn)上的數據存儲到WR_AD-DRESS所指向的字節地址空間,WRCLOCK信號是由PXA270的WE信號與分配給RAM的片選信號(高電平有效)相與而得。對RAM進(jìn)行模擬寫(xiě)時(shí)必須確保AUTOWREN無(wú)效(低電平);在檢驗數據DMA傳輸的RAM輸出環(huán)節,WRCLOCK應不再出現上升沿信號,以防RAM同時(shí)讀寫(xiě)造成輸出不定值。此外,每個(gè)數據從outputdata端口輸出時(shí),CS、DS在一定延時(shí)后(1個(gè)CLK時(shí)鐘周期)給時(shí)序產(chǎn)生留足夠時(shí)間。需說(shuō)明:COM20020內部有2 K字節的RAM空間,用于存放待發(fā)送或已接收的數據包,在向RAM中寫(xiě)數據包前,指定該數據包的存放位置,然后將COM20020中的指針自動(dòng)移動(dòng)位置 1,則只需連續的向該RAM中寫(xiě)數據,而不必給出地址信號。
3.3 對外設指定寄存器操作
對外設指定寄存器操作比批數據傳送實(shí)現簡(jiǎn)單,只需將操作次數降為1次,并對 COM20020的A2~A0提供相應的地址即可。指定寄存器操作將數據存儲在RAM的高512字節空間,并且只占用其中低8個(gè)字節,在PXA270編程時(shí),需確保PXA270送入RAM的地址與命令寄存器中的RAM存儲地址COMMANDBYTE[2..0]相對應。
4 結論
本設計解決ARCNET協(xié)議專(zhuān)用器件應用于列車(chē)通信網(wǎng)絡(luò )中的時(shí)序匹配問(wèn)題,實(shí)現了PXA270處理器與COM20020的時(shí)序轉換。此外,對擴展其他總線(xiàn)訪(fǎng)問(wèn)類(lèi)型提供了參考框架,可通過(guò)修改CommandGenerator中COM20020時(shí)序,實(shí)現不同外設總線(xiàn)訪(fǎng)問(wèn)類(lèi)型的擴展;修改 AutoAccessDataNun-sOnce中的ACCESSTYPE,可配置批數據操作的數據種類(lèi)。
相關(guān)推薦
技術(shù)專(zhuān)區
- FPGA
- DSP
- MCU
- 示波器
- 步進(jìn)電機
- Zigbee
- LabVIEW
- Arduino
- RFID
- NFC
- STM32
- Protel
- GPS
- MSP430
- Multisim
- 濾波器
- CAN總線(xiàn)
- 開(kāi)關(guān)電源
- 單片機
- PCB
- USB
- ARM
- CPLD
- 連接器
- MEMS
- CMOS
- MIPS
- EMC
- EDA
- ROM
- 陀螺儀
- VHDL
- 比較器
- Verilog
- 穩壓電源
- RAM
- AVR
- 傳感器
- 可控硅
- IGBT
- 嵌入式開(kāi)發(fā)
- 逆變器
- Quartus
- RS-232
- Cyclone
- 電位器
- 電機控制
- 藍牙
- PLC
- PWM
- 汽車(chē)電子
- 轉換器
- 電源管理
- 信號放大器
評論