隨著電子技術(shù)、計(jì)算機(jī)應(yīng)用技術(shù)和EDA技術(shù)的不斷發(fā)展,利用FPGA進(jìn)行數(shù)字系統(tǒng)的開(kāi)發(fā)已被廣泛應(yīng)用于通信、航天、醫(yī)療電子、工業(yè)控制等領(lǐng)域,F(xiàn)PGA成為當(dāng)今硬件設(shè)計(jì)的首選方式之一。PC/104是一種專(zhuān)門(mén)為嵌入式控制而定義的工業(yè)控制總線,以其獨(dú)特的堆棧式結(jié)構(gòu)、低功率等優(yōu)點(diǎn),得到了廣泛的應(yīng)用。作為主流的現(xiàn)場(chǎng)總線,工業(yè)控制局域網(wǎng)CAN(Controller Area Network)總線抗干擾能力強(qiáng),易于組網(wǎng),具有非常廣闊的應(yīng)用前景。獨(dú)特的PC/104總線與CAN總線的結(jié)合,進(jìn)一步拓寬了CAN總線的應(yīng)用領(lǐng)域。
1基于FPGA的CAN核設(shè)計(jì)
本設(shè)計(jì)采用了Altera公司的Cyclone III系列FPGA EP3C25,開(kāi)發(fā)平臺(tái)采用了Altera公司的Quartus II軟件。CAN核的設(shè)計(jì)以SJA1000功能結(jié)構(gòu)為基礎(chǔ)。
CAN核的功能框圖如圖1所示。該CAN總線控制器IP核,遵循CANbus 2.0標(biāo)準(zhǔn),其功能和寄存器操作與SJA1000兼容。IP核采用VHDL編碼,并采用容錯(cuò)設(shè)計(jì),可抑制存儲(chǔ)性器件的數(shù)據(jù)位翻轉(zhuǎn),大大提高了IP核的可靠性。CAN核可在FPGA中實(shí)現(xiàn),也可以實(shí)現(xiàn)為ASIC。其中包含3個(gè)主要模塊:寄存器組(can_registers),位時(shí)序邏輯(can_^l),位流處理器(can_bsp)。
來(lái)源:維庫(kù)開(kāi)發(fā)網(wǎng)