




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
一種0-bi在cpu卡中的應(yīng)用
1降低功耗的設(shè)計(jì)自法國(guó)率先開(kāi)發(fā)世界第一張ic卡以來(lái),ic卡已廣泛應(yīng)用于金融、交通、醫(yī)療、身份證明、通信等領(lǐng)域,形成了一個(gè)全球新興的科技產(chǎn)業(yè)。目前,IC卡最大的應(yīng)用是在通信和銀行領(lǐng)域。2000年,世界范圍IC卡產(chǎn)量為13億張,其中80%用于通信,12%用于銀行,而其它應(yīng)用只占了8%??梢钥吹?大部分的IC卡都將應(yīng)用在手持設(shè)備中。這就要求IC卡在技術(shù)上應(yīng)當(dāng)盡量降低功耗,從而降低手持設(shè)備中電池的重量,并延長(zhǎng)電池的使用時(shí)間。IC卡將向一卡多用的方向發(fā)展,對(duì)數(shù)據(jù)存取的可靠性和安全性也提出了更高的要求。CPU卡由于其可以進(jìn)行復(fù)雜的信息處理和計(jì)算、適應(yīng)多應(yīng)用的要求而逐漸成為IC卡的主流。一個(gè)典型的CPU卡包括有CPU、EEPROM、RAM、ROM和相關(guān)的控制邏輯。為了縮短設(shè)計(jì)周期,CPU、EEPROM、RAM和ROM通常采用已有的IP核。因此,CPU卡的設(shè)計(jì),往往是基于IP核的設(shè)計(jì)?;贗P核的設(shè)計(jì)固然有其簡(jiǎn)化設(shè)計(jì)、縮短設(shè)計(jì)周期的有利之處。但由于設(shè)計(jì)自由度的降低,也使設(shè)計(jì)的優(yōu)化空間大大縮小。基于IP核設(shè)計(jì)的優(yōu)化(比如功耗的優(yōu)化)往往與一般電路的設(shè)計(jì)優(yōu)化不同,更多的是行為級(jí)的優(yōu)化而非電路級(jí)的優(yōu)化。本文介紹一個(gè)基于8位CPU(6805)的CPU卡用芯片的設(shè)計(jì),著重介紹設(shè)計(jì)中采用的通過(guò)地址總線編碼降低系統(tǒng)功耗的低功耗設(shè)計(jì)方法。此芯片包括一個(gè)8位微處理器、16kbyteROM、8kbyteEEPROM、384ByteRAM和一個(gè)兼容ISO7816的串口。由于采用了低功耗設(shè)計(jì)方法,在電路復(fù)雜度變化不大的情況下,整個(gè)芯片的功耗得到了有效的降低。2芯片保護(hù)電路設(shè)計(jì)的CPU卡用芯片是一個(gè)通過(guò)串行接口與外界(讀卡器)通信的接觸式CPU卡用芯片。芯片以一個(gè)8位架構(gòu)的CPU(6805)作為核心,并通過(guò)內(nèi)部總線(16位地址總線,8位數(shù)據(jù)總線)將片上存儲(chǔ)器、內(nèi)部邏輯電路和CPU聯(lián)系起來(lái)。芯片的總體結(jié)構(gòu)如圖1所示。其中的6805CPU是進(jìn)行運(yùn)算和對(duì)存儲(chǔ)器操作的核心部件。外部接口設(shè)備通過(guò)串口I/O對(duì)CPU卡發(fā)出命令,固化在ROM中的片上操作系統(tǒng)(COS)對(duì)命令做出解釋,隨后8位CPU進(jìn)行相應(yīng)的操作——通過(guò)總線對(duì)存儲(chǔ)器進(jìn)行讀寫(xiě)操作,并進(jìn)行數(shù)據(jù)的運(yùn)算。384字節(jié)的RAM用作CPU進(jìn)行運(yùn)算時(shí)的數(shù)據(jù)存儲(chǔ)器。16kbyte的ROM則存儲(chǔ)了操作系統(tǒng)。8kbyte的EEPROM是用戶的數(shù)據(jù)存儲(chǔ)區(qū),擦寫(xiě)EEPROM所需的高壓通過(guò)集成于芯片上的電荷泵產(chǎn)生。芯片上還集成有兩個(gè)8位隨機(jī)數(shù)發(fā)生器,可以提供16位的隨機(jī)數(shù)。為了對(duì)抗可能的從硬件和軟件上對(duì)卡的攻擊,芯片電路中設(shè)計(jì)了相應(yīng)的保護(hù)電路。其中,包括電壓監(jiān)測(cè)電路、時(shí)鐘頻率監(jiān)測(cè)電路、軟熔絲電路和嚴(yán)格的存儲(chǔ)器存取控制邏輯。對(duì)I/O串口、安全邏輯(電壓、時(shí)鐘頻率監(jiān)測(cè))、EEPROM和隨機(jī)數(shù)發(fā)生器的控制都是通過(guò)特殊功能寄存器來(lái)完成的。這些特殊功能寄存器通過(guò)總線與CPU同相關(guān)的模塊相連接。從芯片結(jié)構(gòu)圖(圖1)中清楚地看到,總線(包括地址總線和數(shù)據(jù)總線)在整個(gè)電路中連接了所有的模塊。整個(gè)芯片通過(guò)5個(gè)觸點(diǎn)與外部接口設(shè)備連接。Vcc和GND是電源和地觸點(diǎn),外部接口設(shè)備通過(guò)這兩個(gè)觸點(diǎn)對(duì)芯片供電。此芯片既可工作于3V電壓系統(tǒng)下,也可工作于于5V電壓系統(tǒng)下。CLK是外部時(shí)鐘觸點(diǎn),外部接口設(shè)備通過(guò)這個(gè)觸點(diǎn)提供最高工作頻率為5MHz的外部時(shí)鐘。RST觸點(diǎn)用來(lái)為整個(gè)芯片的內(nèi)部電路提供復(fù)位信號(hào)。I/O觸點(diǎn)則提供了與外部接口設(shè)備的串行輸入/輸出接口,外部接口設(shè)備將通過(guò)I/O觸點(diǎn)對(duì)卡發(fā)出命令,并得到卡對(duì)命令的回復(fù)。3總地址打印編碼的效率設(shè)計(jì)方法3.1提高開(kāi)關(guān)總功耗的措施眾所周知,CMOS電路的功耗可以分為靜態(tài)功耗和動(dòng)態(tài)功耗。CMOS電路的靜態(tài)功耗在整個(gè)功耗中所占的比重很小。決定CMOS電路功耗大小的是電路的動(dòng)態(tài)功耗。CMOS電路的動(dòng)態(tài)功耗也可以分為兩類。第一類是交變功耗。當(dāng)輸入是非理想階躍波時(shí),在輸入上升沿或下降沿的瞬間,CMOS電路中的P管和N管會(huì)同時(shí)導(dǎo)通,由此導(dǎo)致的交變功耗在整個(gè)動(dòng)態(tài)功耗中占的比重是10%~30%。另一類是開(kāi)關(guān)功耗。此類功耗是電路中的純電容負(fù)載充放電而消耗的。電容負(fù)載包括了連線電容負(fù)載和電路中各個(gè)門作為上級(jí)電路輸出負(fù)載的門電容。由于開(kāi)關(guān)功耗是門翻轉(zhuǎn)對(duì)電容負(fù)載充放電的結(jié)果,因此,開(kāi)關(guān)功耗是負(fù)載電容和邏輯翻轉(zhuǎn)率的函數(shù)。計(jì)算開(kāi)關(guān)功耗的公式為:Ρc=V2dd/2∑?nets(i)(Cloadi×ΤRi)(1)式中,Pc為電路中總的開(kāi)關(guān)功耗,Vdd為電源電壓,Cloadi為電路中第i條連線上的電容負(fù)載總和,TRi為電路中第i條連線上的翻轉(zhuǎn)率(每秒翻轉(zhuǎn)次數(shù))。由于對(duì)CMOS電路功耗大小起決定性作用的是動(dòng)態(tài)功耗,而開(kāi)關(guān)功耗占整個(gè)動(dòng)態(tài)功耗的70%~90%,因此,如果能夠降低CMOS電路中的開(kāi)關(guān)功耗,將能有效降低整個(gè)CMOS電路的功耗。由(1)式可以看到,與開(kāi)關(guān)功耗Pc相關(guān)的是Vdd、Cloadi和TRi。由于Pc和Vdd的平方成正比,因此,Vdd的降低對(duì)降低開(kāi)關(guān)功耗Pc的作用最大。但對(duì)于CMOS電路,雖然也有一些電路設(shè)計(jì)技巧可以小幅度地降低Vdd,從而降低整個(gè)電路的功耗,但是,電源電壓Vdd基本上還是由工藝所決定的。對(duì)電路設(shè)計(jì)者來(lái)說(shuō),Vdd事實(shí)上是一個(gè)固定的值。因此,降低連線上的Cloadi和TRi成為一種容易實(shí)現(xiàn)的降低電路功耗的有效方法。顯然,對(duì)電路中負(fù)載最大或是翻轉(zhuǎn)率最大的連線進(jìn)行優(yōu)化,將最為有效地降低整個(gè)CMOS電路的功耗。在CPU卡芯片的設(shè)計(jì)過(guò)程中,降低功耗最主要的方法是對(duì)地址總線進(jìn)行重新編碼,以降低地址總線上的翻轉(zhuǎn)率。這是因?yàn)?1)地址總線上具有大的負(fù)載電容,且地址總線翻轉(zhuǎn)率很高,地址總線上消耗的功耗在整個(gè)芯片的功耗中占有不小的比重;2)研究表明,存儲(chǔ)器功耗的相當(dāng)一部分(最多可達(dá)到50%)是存儲(chǔ)器中的buffer、decoder等電路所消耗的。而對(duì)地址總線進(jìn)行重新編碼,將降低地址總線翻轉(zhuǎn)率,同時(shí),也導(dǎo)致存儲(chǔ)器模塊中相關(guān)電路(buffer、decoder等)翻轉(zhuǎn)率的降低。因此,對(duì)地址總線進(jìn)行重新編碼,就能降低地址總線上的翻轉(zhuǎn)率,從而進(jìn)一步降低整個(gè)芯片的功耗。3.2bi編碼的一般過(guò)程現(xiàn)有的地址總線編碼方法主要是BI(Bus-Invert)編碼方法和T0(Zero-Transition)編碼方法。BI碼是由Stan和Burleson提出的,它是降低總線上的平均功耗的一種編碼方法。BI編碼的基礎(chǔ)建立在計(jì)算總線在t-1時(shí)刻和t時(shí)刻間的漢明距離(HammingDistance)上。這里的漢明距離是指在t時(shí)刻總線上的地址同t-1時(shí)刻總線上的地址相比發(fā)生了變化的地址位的個(gè)數(shù)。如果連續(xù)兩個(gè)時(shí)刻(t-1、t)間的漢明距離大于N/2(N為總線的寬度,不失一般性,N為偶數(shù)),將t時(shí)刻總線上的地址取反,然后再傳遞出去;如果漢明距離小于或等于N/2,則將地址原封不動(dòng)地傳遞出去。BI編碼需要在總線上增加一條冗余連線INV,通過(guò)INV通知地址的接收端,地址總線上的地址是否取反。BI編碼可以用(2)式說(shuō)明。(B(t)?ΙΝV(t))={(b(t)?0)ifΗ(t)≤Ν/2(?b(t)?1)ifΗ(t)>Ν/2(2)式中,B(t)是指t時(shí)刻通過(guò)總線傳遞出去的編碼后的地址值,b(t)是指t時(shí)刻實(shí)際的地址值,而H(t)=(B(t-1)|INV(t-1),b(t)|0)是t時(shí)刻與t-1時(shí)刻間總線的漢明距離??偩€的寬度為N。與BI編碼對(duì)應(yīng)的解碼公式為:b(t)={B(t)ifΙΝV=0?B(t)ifΙΝV=1(3)T0碼是一種主要針對(duì)地址總線的編碼方法。T0碼通過(guò)增加一條冗余連線INC來(lái)通知地址的接收端總線上的地址是否連續(xù)。如果INC為高,表明總線上的地址是連續(xù)的,此時(shí)所有的地址總線保持不變,地址接收端自動(dòng)將上一地址加1,作為當(dāng)前的地址;如果INC為低,表明前后兩次地址并非連續(xù),此時(shí)總線將正常地傳送地址碼。T0編碼的編碼公式為:(B(t)?ΙΝC(t))={B(t-1)?1)如果地址連續(xù)(b(t)?0)如果地址不連續(xù)(4)與T0編碼相對(duì)應(yīng)的解碼公式為:b(t)={b(t-1)+1ifΙΝC=1B(t)ifΙΝC=0(5)(5)式中,B(t)與b(t)的定義與BI碼的定義相同。3.3關(guān)于bi編碼的編碼只有當(dāng)總線上的地址是連續(xù)地址的時(shí)候,采用T0編碼才能減少地址總線的翻轉(zhuǎn)。地址不連續(xù)時(shí),T0編碼并不會(huì)對(duì)地址總線上的地址進(jìn)行任何變動(dòng),這時(shí),T0編碼并不能減少地址總線的翻轉(zhuǎn)。根據(jù)Benini等人的統(tǒng)計(jì),對(duì)于指令總線,地址總線上的地址流中,連續(xù)地址平均占整個(gè)地址流長(zhǎng)度的63.04%;對(duì)于數(shù)據(jù)地址總線,地址總線上的地址流中,連續(xù)地址平均占整個(gè)地址流長(zhǎng)度的11.39%;對(duì)于指令/數(shù)據(jù)公用的地址總線,地址總線上的地址流中,連續(xù)地址平均占整個(gè)地址流長(zhǎng)度的57.62%。我們還對(duì)要設(shè)計(jì)的CPU卡中的地址流的情況進(jìn)行了計(jì)算。以某實(shí)用的COS為基礎(chǔ),取8位隨機(jī)數(shù),并對(duì)它進(jìn)行三重DES加密,整個(gè)計(jì)算過(guò)程中,總的地址流長(zhǎng)度為832296,其中,連續(xù)地址的總數(shù)為204512。地址總線上的地址流中,連續(xù)地址平均只占整個(gè)地址流長(zhǎng)度的24.57%。從以上數(shù)據(jù)可以看出,如果單純采用T0編碼,由于地址流中大量的不連續(xù)地址的存在,使得地址總線上的翻轉(zhuǎn)率不可能得到最大程度的降低。如果能夠在地址不連續(xù)時(shí)也能夠?qū)Φ刂房偩€進(jìn)行優(yōu)化,將會(huì)在T0碼的基礎(chǔ)上進(jìn)一步降低地址總線上的翻轉(zhuǎn)率。實(shí)現(xiàn)地址連續(xù)與不連續(xù)時(shí)均可以對(duì)總線進(jìn)行優(yōu)化,一個(gè)可行的方法是將T0編碼和BI編碼結(jié)合起來(lái)。相應(yīng)地,要增加兩條冗余連線INV、INC??偩€上的地址連續(xù)時(shí),采用T0碼:維持總線不變,由地址接收端自動(dòng)將上一地址加1,作為當(dāng)前的地址,此時(shí),INV置0,INC置1??偩€上的地址不連續(xù)時(shí),采用BI碼:當(dāng)前地址與上一地址相比,如果發(fā)生變化的位數(shù)超過(guò)了地址總線寬度的一半,將地址取反傳遞出去,此時(shí),INV置1,INC置0;如果發(fā)生變化的位數(shù)不到總線寬度的一半,直接將地址送出,此時(shí),INV置0,INC置0。此T0-BI碼的編碼公式為:(B(t)?ΙΝC(t)?ΙΝV(t))={如果地址連續(xù)∶(B(t-1)?1?0)如果地址不連續(xù)&Η(t)≤Ν2∶(b(t)?0?0)如果地址不連續(xù)&Η(t)>Ν2∶(?b(t)?0?1)(6)與之相對(duì)應(yīng)的解碼公式為:b(t)={B(t)ifΙΝC=0?ΙΝV=0?B(t)ifΙΝC=0?ΙΝV=1b(t-1)+1ifΙΝC=1(7)(6)、(7)式中的B(t)、b(t)、INC、INV、N和H(t)的定義與前面所述相同。一方面,BI編碼只有當(dāng)總線上發(fā)生翻轉(zhuǎn)的地址線的數(shù)目大于實(shí)際總線寬度的一半時(shí),才會(huì)對(duì)地址總線進(jìn)行優(yōu)化編碼(實(shí)際就是將地址取反),從而減少總線上地址的翻轉(zhuǎn)。但是,對(duì)于總線上發(fā)生翻轉(zhuǎn)的地址線的數(shù)目不到總線寬度一半的情況,BI編碼只是簡(jiǎn)單地將原地址傳送出去。另一方面,由模擬實(shí)驗(yàn)知道,在幾乎所有的程序執(zhí)行中,在一段時(shí)間內(nèi),CPU總是集中地訪問(wèn)程序中的某一個(gè)部分,而不是隨機(jī)地對(duì)程序所有部分具有平均訪問(wèn)概率,這就是所謂的局部性原理(principleoflocality)。顯然,由于局部性原理的存在,地址的變化往往局限于不大的一段地址空間內(nèi),很多情況下只是在不到總線寬度一半的低位地址總線上發(fā)生(比如16位地址總線的低8位)。因此,BI碼并不能充分降低地址總線上地址的翻轉(zhuǎn)。我們對(duì)設(shè)計(jì)的CPU卡中的地址流的情況進(jìn)行了進(jìn)一步的計(jì)算。取8位隨機(jī)數(shù),并對(duì)它進(jìn)行三重DES加密,整個(gè)計(jì)算過(guò)程中總的地址流長(zhǎng)度為832296,不連續(xù)但是只有低字節(jié)發(fā)生變化的地址總數(shù)為294360,占整個(gè)地址的35.37%,這個(gè)比例甚至超過(guò)了連續(xù)地址的比例24.57%。為了有效降低地址總線上不連續(xù)地址(主要是不連續(xù)但是只有低字節(jié)發(fā)生變化的地址)所造成的地址翻轉(zhuǎn),我們?cè)贑PU卡(16位地址總線)的設(shè)計(jì)中采用了一種改進(jìn)的T0-BI編碼。此種編碼方法也需要增加兩條冗余連線INC和INV。地址總線上的地址是連續(xù)時(shí),采用T0碼,此時(shí),INC=1,INV=0;如果地址總線上的地址不連續(xù),將分別考慮整個(gè)地址總線和地址總線低字節(jié)的情況。如果整個(gè)地址總線發(fā)生變化的地址位的個(gè)數(shù)超過(guò)了總線寬度的一半,將整個(gè)地址總線上的地址取反,此時(shí),INC=0,INV=1;如果整個(gè)地址總線發(fā)生變化的地址位的個(gè)數(shù)不到總線寬度的一半,但是總線低字節(jié)中發(fā)生變化的地址位的個(gè)數(shù)超過(guò)了總線寬度的1/4,將地址總線的低字節(jié)取反,高字節(jié)保持不變,此時(shí),INC=1,INV=1;如果整個(gè)地址總線發(fā)生變化的地址位的個(gè)數(shù)不到總線寬度的一半,而且總線低字節(jié)中發(fā)生變化的地址位的個(gè)數(shù)也不到總線寬度的1/4,整個(gè)地址總線保持不變,此時(shí),INC=0,INV=0。此種編碼方法的編碼公式如下:(B(t)?ΙΝC(t)?ΙΝV(t))={如果地址連續(xù)∶(B(t-1)?1?0)如果地址不連續(xù)∶ifΗ(t)≤Ν2&Η(t)L<Ν4∶(b(t)?0?0)ifΗ(t)≤Ν2&Η(t)L>Ν4∶(b(t)Η?b(t)L?1?1)ifΗ(t)>Ν2∶(?b(t)?0?1)(8)(8)式中,bH與bL為地址的高低字節(jié),HL為地址低字節(jié)的漢明距離,其余各符號(hào)定義同前。對(duì)應(yīng)的解碼公式為:b(t)={B(t)ifΙΝC=0?ΙΝV=0?B(t)ifΙΝC=0?ΙΝV=1b(t-1)+1ifΙΝC=1?ΙΝV=0B(t)ΗB(t)LifΙΝC=1?ΙΝV=1(9)4實(shí)驗(yàn)結(jié)果與分析將改進(jìn)后的地址總線編碼應(yīng)用于CPU卡設(shè)計(jì)后的地址總線的框圖如圖2所示。圖中的編碼和解碼邏輯均按照改進(jìn)的地址總線編/解碼公式設(shè)計(jì)。我們按照Top-Down的正向設(shè)計(jì)方法完成了整個(gè)CPU卡用芯片的設(shè)計(jì)。以相同的片上操作系統(tǒng)(COS)為基礎(chǔ),取8位隨機(jī)數(shù)并完成三重DES加密運(yùn)算,地址總線上的翻轉(zhuǎn)總次數(shù)的統(tǒng)計(jì)情況如下:1)沒(méi)有應(yīng)用地址總線編碼的CPU卡地址總線翻轉(zhuǎn)2789059次;2)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度門面房出租與租賃期限調(diào)整合同
- 二零二五年度診所負(fù)責(zé)人安全責(zé)任免除合同
- 服務(wù)器采購(gòu)合同共
- 無(wú)人機(jī)研發(fā)制造投資合同
- 水利設(shè)施施工合同
- 高考語(yǔ)文復(fù)習(xí)-文言文專題訓(xùn)練-《遼史》
- 高考語(yǔ)文復(fù)習(xí):文言文霍去病專練
- 農(nóng)業(yè)產(chǎn)業(yè)孵化項(xiàng)目合作協(xié)議書(shū)
- 業(yè)務(wù)流程外包服務(wù)協(xié)議內(nèi)容詳訂
- 數(shù)字媒體設(shè)計(jì)技能考核點(diǎn)
- 2023國(guó)家自然科學(xué)基金申請(qǐng)書(shū)
- 蜂膠表彰會(huì)中宏全國(guó)通用版模板課件
- 原始狩獵圖 (2)
- 《色彩構(gòu)成——色彩基礎(chǔ)知識(shí)》PPT課件
- 煤礦供電系統(tǒng)及供電安全講座方案課件
- 綠色建筑及材料分析及案列
- 鍍層的結(jié)合力
- 霍尼韋爾DDC編程軟件(CARE)簡(jiǎn)介
- 實(shí)用中西醫(yī)結(jié)合診斷治療學(xué)
- 論《說(shuō)文解字》中的水文化
- 德龍自卸車合格證掃描件(原圖)
評(píng)論
0/150
提交評(píng)論