一種基于FPGA的PXA270外設(shè)時序轉(zhuǎn)換接口設(shè)計

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