關(guān) 閉

新聞中心

EEPW首頁 > 工控自動化 > 設(shè)計(jì)應(yīng)用 > 基于FPGA的多通道串行A/D轉(zhuǎn)換器的控制器設(shè)計(jì)

基于FPGA的多通道串行A/D轉(zhuǎn)換器的控制器設(shè)計(jì)

作者: 時(shí)間:2009-10-30 來源:網(wǎng)絡(luò) 收藏
電路由1個(gè)計(jì)數(shù)器(cs_wide)、前沿D觸發(fā)器(inst6)和后沿D觸發(fā)器(inst3)組成。當(dāng)cs信號上升沿到時(shí),inst6觸發(fā),cs_ad置高電平。2個(gè)周期后,inst3由下降沿觸發(fā)輸出高電平,反相后將inst6和計(jì)數(shù)器cs_wide清零,同時(shí)cs_ad輸出低電平。由此看出,cs_ad的信號正是cs信號經(jīng)過2個(gè)周期展寬后得到。

本文引用地址:http://butianyuan.cn/article/163508.htm

地址及控制字形成模塊(addr_1)可以實(shí)現(xiàn)所需的各種輸入模式,并產(chǎn)生地址和控制字,以單端輸入模式為例,VHDL代碼如下:

這里用雙進(jìn)程的有限狀態(tài)機(jī)(FSM)來地址產(chǎn)生器。當(dāng)addr<=“0000”時(shí)表示沒有通道被選擇,ADS7844沒有工作;當(dāng)addr<=“0000”時(shí)表示通道1被選擇,依次類推。

4 計(jì)算機(jī)仿真分析

用Quartus Ⅱ 6.0進(jìn)行分析綜合、布局,共占用Altera cyclone 59個(gè)LE(logic elements),波形仿真如圖5所示。

圖5中elk的周期為100 ns,clk1為系統(tǒng)時(shí)鐘4分頻后的工作時(shí)鐘,當(dāng)cs_all為低電平時(shí),AD_CONTROLLER開始工作。由狀態(tài)機(jī)產(chǎn)生的控制字(10000100)在stld的下降沿被鎖存入移位寄存器,當(dāng)cs_ad由高變低時(shí),控制字被逐位移出至di端口。在此,假設(shè)當(dāng)ADS7844接收到控制字并由ad_do端口逐位移出1通道轉(zhuǎn)換后的數(shù)據(jù)1000000000010000,經(jīng)過16個(gè)周期后oe由低變高,oe的下降沿可以將移入寄存器的數(shù)據(jù)鎖存。由圖5可見,仿真波形與ADS78414控制波形一致,達(dá)到了的目的。

5 結(jié) 語

本試驗(yàn)用于混合動力汽車電池管理系統(tǒng)電池電壓、電流信息采集部分。電池管理系統(tǒng)通常采用雙單片機(jī)的結(jié)構(gòu),一個(gè)單片機(jī)完成電池信息采集功能,另外一個(gè)單片機(jī)完成電池SoC(State of Charge)計(jì)算及人機(jī)交互功能。這種系統(tǒng)結(jié)構(gòu)復(fù)雜,可靠性降低。為解決這一問題,該A/D被封裝成Avalon總線的自定義IP核,應(yīng)用于Altera公司所支持的NIOS Ⅱ嵌入式系統(tǒng)中,NIOS Ⅱ軟核CPU僅在A/D引起的中斷服務(wù)程序中讀取采集到的數(shù)據(jù),這樣大大提高了采集速度和CPU的效率,使得有更多的CPU資源應(yīng)用于SoC計(jì)算和人機(jī)交互。這種SoPC(Systemon Programmable Chip)的電池管理系統(tǒng)結(jié)構(gòu)緊湊、功能齊全、可靠性大大提高。

用來控制電路有很多優(yōu)點(diǎn)。FPGA不僅可進(jìn)行任意次編程,而且用戶可以借助開發(fā)工具快速編程、編譯、優(yōu)化、仿真直到最后芯片制作。高集成性使得用戶可以利用硬件描述語言及開發(fā)工具在單片F(xiàn)PGA芯片上實(shí)現(xiàn)各種復(fù)雜的邏輯電路和片上系統(tǒng),提高了系統(tǒng)性能、減小了電路面積、降低了成本。高速性有效地解決模擬控制的精度與數(shù)字控制的速度之間的矛盾。隨著FPGA性能的提高和成本的降低,以FPGA為基礎(chǔ)的數(shù)字電路和SoPC(Systam on ProgrammableChip)代表了嵌入式系統(tǒng)的發(fā)展方向,F(xiàn)PGA將應(yīng)用得越來越廣泛。


上一頁 1 2 3 下一頁

評論


相關(guān)推薦

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

關(guān)閉