基于NiosII的多通道PWM信號(hào)測(cè)量/產(chǎn)生器節(jié)點(diǎn)設(shè)計(jì)
摘要:針對(duì)于列車控制系統(tǒng)半實(shí)物仿真平臺(tái)測(cè)速測(cè)距模塊的多通道PWM信號(hào)測(cè)量/產(chǎn)生的要求,提出了一種利用NiosII軟核處理器替代通訊用MCU的智能多通道PWM信號(hào)測(cè)量/產(chǎn)生器的設(shè)計(jì)方案。
關(guān)鍵詞:NiosII;PWM;FPGA;SOPC
2008年4月28日收到本文。
引言
列車控制系統(tǒng)半實(shí)物仿真平臺(tái)是基于HLA規(guī)范,將各種鐵路通信信號(hào)系統(tǒng)內(nèi)的設(shè)備通過建模或?qū)嵨镞B接到一起,構(gòu)建成的一個(gè)完整的列車運(yùn)行控制仿真平臺(tái),用以進(jìn)行系統(tǒng)研究、系統(tǒng)仿真及新系統(tǒng)的開發(fā)。
實(shí)物測(cè)控接口平臺(tái)是列車控制系統(tǒng)半實(shí)物仿真平臺(tái)的重要組成部分,是實(shí)物設(shè)備和HLA仿真環(huán)境的接口,實(shí)現(xiàn)實(shí)物系統(tǒng)和仿真環(huán)境之間的信息交互,保證其協(xié)同并行工作。接口平臺(tái)使用了嵌入式Linux的架構(gòu)以提供HLA界面,同時(shí)提供和實(shí)物設(shè)備對(duì)應(yīng)的物理信號(hào)接口,其中包括車載實(shí)物系統(tǒng)中的測(cè)速測(cè)距模塊需要的多路PWM信號(hào)測(cè)量/產(chǎn)生器節(jié)點(diǎn)。
常用的MCU或者PWM芯片最多能提供16路PWM信號(hào)輸出通道,如果用MCU來實(shí)現(xiàn)PWM信號(hào)周期和占空比的測(cè)量,需要占用大量的硬件資源并且效率不高,因此使用MCU實(shí)現(xiàn)較多通道的PWM信號(hào)測(cè)量/產(chǎn)生器對(duì)MCU的處理能力要求較高,成本較高。若采用MCU/DSP作為外界通訊接口,使用FPGA實(shí)現(xiàn)多通道PWM信號(hào)測(cè)量/產(chǎn)生器,可以完成設(shè)計(jì)目標(biāo),但是系統(tǒng)復(fù)雜度較高。本文提出了一種利用NiosII軟核處理器替代通訊用MCU的智能多通道PWM信號(hào)測(cè)量/產(chǎn)生器的設(shè)計(jì)方案。該設(shè)計(jì)僅使用單片FPGA構(gòu)建SOPC,系統(tǒng)復(fù)雜度低,可靠度高。
節(jié)點(diǎn)硬件設(shè)計(jì)
Nios II是一款基于哈佛結(jié)構(gòu)的32位RISC 處理器,包括3 種內(nèi)核。
智能PWM節(jié)點(diǎn)設(shè)計(jì)的核心在于NiosII軟核處理器的配置和利用FPGA實(shí)現(xiàn)多通道PWM信號(hào)測(cè)量/產(chǎn)生器。
節(jié)點(diǎn)硬件方框圖如圖1所示,F(xiàn)PGA選擇了Altera公司低成本FPGA Cyclone EP1C6Q240C8,電源模塊選擇了Murata公司的可提供3路1.0~3.6V可調(diào)輸出的MPD5S025S,直接提供FPGA需要的3.3V,2.5V和1.5V電源;NiosII的程序代碼保存在FPGA的配置芯片中,配置芯片選擇了16Mbit串行EPCS16,足夠保存NiosII應(yīng)用程序;外擴(kuò)2MByte SDRAM芯片AS4LC1M16S1;通訊接口為RS-485,采用磁隔離的方式,使用的隔離器件是ADuM3301磁隔離芯片,由一個(gè)5V/5V的DC/DC電源隔離器件B0505D提供隔離端的電源。FPGA輸入/輸出的多通道PWM信號(hào)通過接插件連出。整個(gè)節(jié)點(diǎn)設(shè)計(jì)非常簡(jiǎn)潔,可以做到很小的體積。
圖1 智能PWM節(jié)點(diǎn)硬件方框圖
Nios II軟核處理器配置
NiosII軟核處理器使用Quartus II集成的SOPC Builder進(jìn)行配置,配置圖如圖2。根據(jù)節(jié)點(diǎn)設(shè)計(jì)的需要,使用Nios II/s為處理器核心,UART為通訊接口,添加SDRAM控制器和EPCS控制器。使用32bit+12bit PIO作為PWM控制器,這個(gè)控制器是基于總線方式的控制器與FPGA內(nèi)的PWM信號(hào)測(cè)量/產(chǎn)生器相連讀取/寫入周期和占空比信息,具體定義為:32bit數(shù)據(jù),8bit通道地址,1bit讀/寫,1bit配置允許和1bit配置測(cè)量/產(chǎn)生,這2bit可以配置對(duì)應(yīng)地址PWM通道為測(cè)量或產(chǎn)生,1bit預(yù)留。使用這種總線方式控制器配置PWM通道信息的速度快并且易于編程。
圖2 智能PWM節(jié)點(diǎn)NiosII處理器配置圖
FPGA內(nèi)多通道PWM信號(hào)測(cè)量/產(chǎn)生器模塊
多通道PWM信號(hào)測(cè)量/產(chǎn)生器模塊FPGA功能框圖如圖3所示。用FPGA實(shí)現(xiàn)PWM信號(hào)的產(chǎn)生和測(cè)量的核心就是計(jì)數(shù)器的使用,每個(gè)通道的PWM需要8個(gè)計(jì)數(shù)器,其中4個(gè)是PWM信號(hào)產(chǎn)生用的預(yù)置高電平計(jì)數(shù)器,預(yù)置低電平計(jì)數(shù)器,高電平計(jì)數(shù)器和低電平計(jì)數(shù)器;其余4個(gè)是PWM信號(hào)測(cè)量用的高電平計(jì)數(shù)器和低電平計(jì)數(shù)器以及對(duì)應(yīng)的最大值寄存器,由于資源的限制,這些計(jì)數(shù)器必須用RAM實(shí)現(xiàn)。
圖3 多通道PWM信號(hào)測(cè)量/產(chǎn)生器模塊FPGA功能框圖
pwm相關(guān)文章:pwm原理
評(píng)論