1 引 言 電子記帳控稅終端機屬于高度安全和可靠的產(chǎn)品,關(guān)系到信息安全和金融安全,長(cháng)期使用國外的核心器件將給國家安全帶來(lái)嚴重隱患。擁有自主知識產(chǎn)權的嵌入式處理器、專(zhuān)用芯片及其嵌入式操作系統已成為振興我國電子行業(yè)的當務(wù)之急。 目前國家正在大力發(fā)展金稅工程,本文作者參與了針對電子記帳控稅終端機設計的片上系統(System on Chip,SOC)芯片的研究。 2 總體方案 本SoC芯片是面向電子記帳終端設備而設計的符合國家電子記帳終端設備標準的高性能嵌入式的系統芯片,其中以32位的SPARC V8架構的處理器為內核,集成了符合ISO7816標準的智能卡控制器和符合ISO7811/2標準的磁卡控制器接口等外圍設備。他的應用既降低了電子記帳終端設備的成本,又大大提高了系統的可靠性。 2.1 SoC的結構 本SoC芯片內部采用可裁減的總線(xiàn)式結構,選用ARM公司的AMBA總線(xiàn)作為SoC內部總線(xiàn),總線(xiàn)上各個(gè)模塊采用統一的接口方式和總線(xiàn)連接,從而實(shí)現了模塊開(kāi)發(fā)的標準化,降低了開(kāi)發(fā)的工作量。本SoC芯片的結構如圖1所示。 本SoC采用"Harvard"結構,地址總線(xiàn)和數據總線(xiàn)分開(kāi),分別連接到獨立的"cache"控制器上。指令cache和數據cache均為直接映射cache,配置各為4 kB;各部分的功能簡(jiǎn)述如下: (1)32位整型數處理單元(Integer Unit,IU)支持SPARC V8指令集。IU的主要功能是執行整數運算、計算要訪(fǎng)問(wèn)的存儲器的地址,另外他也支持指令計數器和控制指令的執行。IU具有以下特點(diǎn): ①5級單一指令流水; ②單獨的指令cache和數據cache; ③標準的8個(gè)寄存器窗口; ④硬件乘法、除法器; ⑤帶40位累加器的16×16位MAC。 (2)浮點(diǎn)運算單元(Floating Point Unit,FPU)提供遵循SPARC V8標準的全部浮點(diǎn)指令,其浮點(diǎn)數據的格式和浮點(diǎn)指令遵循ANSI/IEEE 754-1985標準,FPU連接在IU上。FPU有32個(gè)32 b的浮點(diǎn)寄存器。芯片使用標準的LD/ST指令在FPU和存儲器之間移動(dòng)數據。存儲器地址由IU計算,浮點(diǎn)操作指令完成浮點(diǎn)算術(shù)運算。 內部的AMBA總線(xiàn)包括2種總線(xiàn):AHB和APB。APB總線(xiàn)用來(lái)訪(fǎng)問(wèn)片內外設的寄存器;AHB總線(xiàn)用作高速數據傳輸。AHB總線(xiàn)連接處理器cache控制器和其他的高速單元,IU是總線(xiàn)上惟一的主控單元。AHB總線(xiàn)從屬單元有:存儲器控制器、AHB/APB轉換橋等。AHB/APB轉換橋作為一個(gè)從屬設備連接在A(yíng)HB總線(xiàn)上,是APB總線(xiàn)惟一的主控單元,處理器通過(guò)AHB/APB橋訪(fǎng)問(wèn)大部分片內外設。 (3)SOC的片上外設,智能卡控制器(Smartcard controller):符合ISO7816標準: 磁條卡控制(magnetic stripe card Controller):符合ISO7811/2標準; 通用輸入輸出接口(GPIO):共80個(gè)GPIO端口; 通用異步串口(UART):一個(gè)16550UART和3個(gè)普通UART; 中斷控制器(Interrupt Controller):支持16個(gè)一級中斷源,32個(gè)二級中斷源; 定時(shí)器(Timer):5個(gè)24位的通用目的定時(shí)器; 看門(mén)狗(Watch Dog):24位看門(mén)狗定時(shí)器; 實(shí)時(shí)時(shí)鐘(RTC):計算秒、分、小時(shí)、天、月、年,具有潤月補償功能,計時(shí)可至2100年,通過(guò)后備電源使實(shí)時(shí)時(shí)鐘工作在低功率模式; PS/2控制器(PS/2 I/F):符合PS/2標準,支持第一套和第二套掃描碼集; I2C控制器(I2C I/F):兼容Phillips公司的I2C標準; SPI控制器(SPI I/F):兼容SPI和Microwire/Plus兩個(gè)企業(yè)標準。 2.2 SoC芯片的設計要點(diǎn) 在SoC的體系架構、邏輯設計和電路設計中采用正向設計方法: 建立深亞微米自頂向下設計流程,實(shí)現硬/軟件協(xié)同仿真、設計、驗證技術(shù),建立芯片正向設計平臺; 低功耗設計技術(shù),包括對RTC及SRAM的低功耗優(yōu)化設計; 采用深亞微米(0.18μm)必須解決的設計問(wèn)題,包括。EMI,CrOSS talk,天線(xiàn)效應和熱電子效應等; 采用現代SoC設計技術(shù),實(shí)現片上外設包括IC卡、磁卡、I2C、SPI、PS/2等功能接口的高度集成設計和測試; 高可靠、實(shí)時(shí)多任務(wù)處理平臺技術(shù),支持嵌入式操作系統及其任務(wù)調度管理; 支持ANSIC的標準應用,實(shí)現底層驅動(dòng)軟件的模塊化、標準化設計。 同時(shí),針對以上技術(shù)挑戰必須實(shí)現如下技術(shù)創(chuàng )新: 該項目為自主知識產(chǎn)權的內嵌32位RISC處理器以及大量功能接口模塊的SoC設計,突破嵌入式SoC的高度集成、高可靠、低功耗、實(shí)時(shí)多任務(wù)處理等關(guān)鍵技術(shù); 建立自頂向下的深亞微米設計流程,實(shí)現硬、軟件協(xié)同設計、仿真、綜合、驗證技術(shù);采用大容量FPGA和嵌入式操作系的統功能驗證平臺;應用樣機對SoC進(jìn)行全面驗證,確保了該項目的技術(shù)路線(xiàn)實(shí)施及產(chǎn)品的實(shí)際應用; 支持多任務(wù)實(shí)時(shí)嵌入式操作系統。 3 功能驗證 在集成電路的設計過(guò)程中,需要進(jìn)行大量的驗證工作,SoC功能驗證采用專(zhuān)門(mén)的開(kāi)發(fā)軟件把設計模型轉換成相應的配置文件,下載到硬件平臺的FPGA或CPLD芯片中,在實(shí)際的應用系統中來(lái)驗證SoC功能的正確性。 在對本SoC進(jìn)行硬件平臺驗證過(guò)程中,采用的FPGA綜合工具是Synplicity公司的Synplify Pro 7.7,FPGA布線(xiàn)工具選用的是Xilinx公司的ISE 5.0,硬件平臺的核心FPGA芯片選用的是Xilinx公司的Virtex II系列的XC2V2000。驗證流程如圖2所示[1-3]。 3.1 驗證平臺的設計 本SOC芯片內部采用AMBA總線(xiàn),內嵌32 b整數處理單元,優(yōu)化的32/64 b浮點(diǎn)數處理單元,并且內嵌了大量的外設,主要包括:80位GPIO口、4路UART控制器、5個(gè)24 b定時(shí)器、看門(mén)狗、.PS/2控制器、I2C總線(xiàn)控制器、SPI總線(xiàn)控制器、1個(gè)三磁道磁卡控制器,3個(gè)智能卡控制器等。為了完整地測試本SoC的所有功能,硬件測試平臺如圖3所示,包含下列基本組成部分: FPGA芯片;配置PROM;程序BPROM;SRAM;串口轉換芯片;I2C總線(xiàn)設備;SPI總線(xiàn)設備;磁卡讀卡器接口;智能卡及卡座;GPIO測試點(diǎn);PS/2設備;系統時(shí)鐘發(fā)生設備;上電復位電路;電源。 3.2 FPGA平臺驗證結果 將由SoC的RTL模型產(chǎn)生的FPGA下載文件(*.bit文件)下載到FPGA中,在Unix環(huán)境下,用SPARC-GCC編譯器編譯測試程序(標準C程序),然后觀(guān)察程序運行結果,就可以驗證整個(gè)SoC系統或某一模塊功能的正 確性。 下面以獲取智能卡復位應答(Answer To Reset,ATR)字節為例,闡述此過(guò)程。 事先知道待測智能卡的ATR字節為:3b,7a,18,0,0,21,8,11,12,13,14,15,16,17,18。 測試結果為: Smartcard controller testing… ATR over,and ATR characters: 3b,7a,18,0,0,21,8,11,12,13,14,15,16,17,18 以上結果說(shuō)明,智能卡控制器可以接收到卡的復位應答字節,SoC的此功能正確。采用同樣的方法及過(guò)程可以驗證其他功能的正確性。 4結 語(yǔ) 該SoC芯片如今已經(jīng)成功應用到了多種電子記帳終端設備中,為國內外的電子記帳終端設備制造商們提供了一種高性?xún)r(jià)比的選擇,為"中國芯"家族又增添了一位新成員。所以,可以認為該SoC芯片的設計還是非常成功的。 設計中存在的主要問(wèn)題就是內置的RAM空間還不夠大,對于高端的電子記帳終端設備,必須外擴一定容量的RAM存儲器,希望在下一款同類(lèi)芯片設計中加以改進(jìn)。 |