便攜式產(chǎn)品具有低功耗意識(shí)的FPGA設(shè)計(jì)方法
要減少RAM的功耗,除了對(duì)RAM的控制和時(shí)鐘信號(hào)進(jìn)行門(mén)控制以外,還需要知道RAM的讀和寫(xiě)分別對(duì)功耗的影響有多少。地址變化、讀寫(xiě)順序、RAM級(jí)聯(lián)方式對(duì)功耗的影響。
對(duì)RAM進(jìn)行讀操作涉及到:控制所存地址和控制鎖存、行的預(yù)譯碼電路、讀的列譯碼電路、行的最終譯碼電路、讀的列譯碼控制、傳感
RAM的讀寫(xiě)地址改變的方式,也會(huì)對(duì)功耗有不同的影響。連續(xù)操作地址之間的漢明距離越小,產(chǎn)生的功耗也越小。反之亦然。也就是說(shuō)當(dāng)前操作的地址和上次操作的地址之間變化的位數(shù)越少,所產(chǎn)生的功耗也會(huì)越小。
讀寫(xiě)間隔操作和連續(xù)讀、連續(xù)寫(xiě)操作相比,要產(chǎn)生多一些的功耗。從圖2中分別對(duì)12塊RAM、16塊RAM和24塊RAM做的測(cè)試結(jié)果看,同樣的操作條件下,RAM塊數(shù)越多,連續(xù)操作地址之間的漢明距離越長(zhǎng),功耗就越大。同樣的塊數(shù)和連續(xù)操作之間的漢明距離,寫(xiě)-讀三次會(huì)比三次寫(xiě)三次讀消耗的功耗要大。
圖2 寫(xiě)讀操作順序vs.讀序列后跟寫(xiě)序列操作
通過(guò)前面所述,我們可以通過(guò)調(diào)整RAM的訪問(wèn)順序降低RAM的功耗??赡艿脑?huà),對(duì)RAM少進(jìn)行讀操作,盡可能一次多讀一些數(shù)據(jù)或者多寫(xiě)一些數(shù)據(jù),少一些讀寫(xiě)操作之間的切換。如果在連續(xù)相同操作的地址之間,漢明距離能保持最小的話(huà)更好。也可以考慮在反向時(shí)鐘沿上對(duì)RAM進(jìn)行讀寫(xiě)操作,以降低RAM的峰值功耗。
不同的RAM級(jí)聯(lián)架構(gòu)所產(chǎn)生的功耗也不同。如果想獲得一個(gè)4K×4的RAM,有許多不同的實(shí)現(xiàn)方式。從圖3中可以看出,根據(jù)這些不同的實(shí)現(xiàn)方式,對(duì)每塊RAM的讀寫(xiě)時(shí)鐘控制,進(jìn)行門(mén)控制所產(chǎn)生的功耗是最低的。
圖3 根時(shí)鐘vs.葉時(shí)鐘vs.門(mén)控允許
評(píng)論