欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于憶阻器輔助邏輯的邏輯綜合與驗(yàn)證方法

文檔序號(hào):40544151發(fā)布日期:2025-01-03 11:03閱讀:10來源:國知局
本發(fā)明涉及電子設(shè)計(jì)自動(dòng)化領(lǐng)域,具體涉及一種基于憶阻器輔助邏輯的邏輯綜合與驗(yàn)證方法。
背景技術(shù)
::1、人工智能與物聯(lián)網(wǎng)時(shí)代,傳統(tǒng)的馮諾依曼架構(gòu)中計(jì)算和存儲(chǔ)相分離的特點(diǎn)存在著存儲(chǔ)墻和功耗墻等瓶頸,限制了算力的進(jìn)一步提升。將存儲(chǔ)和計(jì)算集成在一起的存算一體架構(gòu)有望解決上述問題,從而大幅提升算力。憶阻器作為實(shí)現(xiàn)存算一體架構(gòu)的有力候選器件,為上述問題提供了新的解決思路。2、利用憶阻器可以實(shí)現(xiàn)多種邏輯運(yùn)算,例如蘊(yùn)含邏輯(implication,?imply),憶阻器輔助邏輯(memristor-aided?logic,?magic)。利用憶阻器輔助邏輯能夠?qū)崿F(xiàn)所有基礎(chǔ)的數(shù)字邏輯門,例如與(and)、或(or)、非(not)、與非(nand)、或非(nor)等;同時(shí)nor和not可以直接映射到憶阻器陣列上。此外,由于nor是邏輯完備的運(yùn)算符,任意的布爾函數(shù)均可由nor表示。此外,憶阻器交叉陣列的行列具有十分規(guī)則的排布,magic的映射規(guī)則使得magic支持并行運(yùn)算,使得能夠顯著提升算術(shù)運(yùn)算的吞吐率。3、為了解決傳統(tǒng)計(jì)算系統(tǒng)的存儲(chǔ)墻和功耗墻的問題,需要設(shè)計(jì)基于憶阻器的數(shù)字存算一體系統(tǒng)。對(duì)于基于憶阻器的數(shù)字存算一體系統(tǒng)而言,為了使用該系統(tǒng)計(jì)算任意現(xiàn)實(shí)場(chǎng)景下復(fù)雜的布爾函數(shù),人工設(shè)計(jì)是不現(xiàn)實(shí)的,因此開發(fā)高效的電子設(shè)計(jì)自動(dòng)化(electronicdesign?automation,?eda)工具至關(guān)重要。傳統(tǒng)的數(shù)字集成電路eda流程包含多個(gè)階段。在完成了架構(gòu)設(shè)計(jì)以及rtl設(shè)計(jì)之后,在邏輯綜合階段,首先采用傳統(tǒng)的工藝無關(guān)的邏輯綜合將輸入的布爾函數(shù)轉(zhuǎn)換為中間邏輯表示,例如與非圖(and?inverter?graph,?aig)等。之后需要對(duì)中間邏輯表示應(yīng)用邏輯優(yōu)化算法,從而優(yōu)化電路的節(jié)點(diǎn)數(shù)量或者是邏輯層級(jí)。在接下來的工藝映射階段,不同于傳統(tǒng)的基于查找表(look-up?table,?lut)的fpga映射以及基于標(biāo)準(zhǔn)單元庫(standard?cell?library,?scl)的asic映射,存算一體系統(tǒng)需要將優(yōu)化之后的中間邏輯表示映射到憶阻器交叉陣列上,并得到對(duì)應(yīng)的微操作符(micro-operations,mc)。微操作符包含映射所需憶阻器單元的數(shù)量、映射所需計(jì)算周期以及每一個(gè)計(jì)算周期對(duì)應(yīng)的具體的計(jì)算操作。4、當(dāng)前最先進(jìn)的基于憶阻器輔助邏輯的邏輯綜合框架中存在著成本函數(shù)不準(zhǔn)確,以及未能考慮到根節(jié)點(diǎn)執(zhí)行順序?qū)τ成浣Y(jié)果的影響等不足,使得映射后的結(jié)果質(zhì)量不高。同時(shí),工具的自動(dòng)化程度較低,需要手動(dòng)選取合適的憶阻器陣列大小,映射的過程繁瑣并且低效。此外,缺少相應(yīng)的等價(jià)性驗(yàn)證方法來驗(yàn)證映射后生成的的微操作符是否符合設(shè)計(jì)規(guī)范。技術(shù)實(shí)現(xiàn)思路1、本發(fā)明所要解決的技術(shù)問題是,針對(duì)現(xiàn)有技術(shù)的不足,提供一種基于憶阻器輔助邏輯的邏輯綜合與驗(yàn)證方法,該方法不僅減少了憶阻器單元的數(shù)量,而且計(jì)算周期的增加也十分有限,同時(shí)能夠有效地驗(yàn)證映射結(jié)果的正確性,驗(yàn)證耗費(fèi)的時(shí)間較短。2、本發(fā)明解決上述技術(shù)問題所采用的技術(shù)方案為:一種基于憶阻器輔助邏輯的邏輯綜合與驗(yàn)證方法,包括如下步驟:3、s1、邏輯綜合:4、步驟s1.1、使用開源的邏輯綜合工具abc獲取用于表示布爾函數(shù)的門級(jí)網(wǎng)表,將門級(jí)網(wǎng)表中的電路拓?fù)溥B接關(guān)系轉(zhuǎn)換為有向無環(huán)圖dag(directed?acyclic?graph,?dag);5、步驟s1.2、采用深度優(yōu)先搜索dfs(depth-first?search,?dfs)獲得dag中的每個(gè)節(jié)點(diǎn)的執(zhí)行序列,計(jì)算出每個(gè)節(jié)點(diǎn)的映射成本值;6、步驟s1.3、基于dag表示的邏輯網(wǎng)絡(luò),結(jié)合計(jì)算得到的映射成本值,獲得電路中根節(jié)點(diǎn)的執(zhí)行順序;7、步驟s1.4、按照根節(jié)點(diǎn)的執(zhí)行順序,對(duì)于每一個(gè)根節(jié)點(diǎn),遞歸地收集子節(jié)點(diǎn)并獲得對(duì)應(yīng)的執(zhí)行序列,按照順序?qū)?zhí)行序列中的節(jié)點(diǎn)依次映射到憶阻器陣列上,并生成對(duì)應(yīng)的微操作符;8、s2、驗(yàn)證:9、解析生成的微操作符,并對(duì)其進(jìn)行邏輯等價(jià)性和設(shè)計(jì)規(guī)則驗(yàn)證。10、作為優(yōu)選,步驟s1.1的具體過程為:11、使用開源的邏輯綜合工具abc,讀入verilog或者blif格式描述的布爾函數(shù)以及包含nor2、inv1、zero、one、buf門的genlib格式的工藝庫,其中nor2代表兩輸入的或非門,inv1代表單輸入的反相器,zero代表常量門零,one代表常量門一,buf代表緩沖器;12、使用abc內(nèi)置的綜合流resyn、resyn2和resyn2rs對(duì)布爾函數(shù)的aig表示進(jìn)行邏輯優(yōu)化;13、使用abc中的工藝映射命令map,利用輸入的工藝庫,將布爾函數(shù)的aig表示進(jìn)行工藝映射,得到verilog格式的門級(jí)網(wǎng)表;14、通過網(wǎng)表解析器將門級(jí)網(wǎng)表中的電路拓?fù)溥B接關(guān)系轉(zhuǎn)換為dag,其中,dag中的節(jié)點(diǎn)包含兩種:inv1和nor2,dag中的邊表示邏輯門之間的連接關(guān)系。15、作為優(yōu)選,步驟s1.2的具體過程為:16、對(duì)于dag中的每個(gè)節(jié)點(diǎn),朝著節(jié)點(diǎn)的扇入方向采用dfs獲得每個(gè)節(jié)點(diǎn)對(duì)應(yīng)的執(zhí)行序列,其中,執(zhí)行序列是一組節(jié)點(diǎn)的集合;17、采用提出的成本算法,針對(duì)每個(gè)節(jié)點(diǎn)對(duì)應(yīng)的執(zhí)行序列,計(jì)算該執(zhí)行序列的映射成本值,并將其賦值為該節(jié)點(diǎn)的映射成本值;18、其中,提出的成本算法為:對(duì)于任一個(gè)節(jié)點(diǎn)及其對(duì)應(yīng)的執(zhí)行序列,將成本值 cost以及標(biāo)記值 i的初始值均初始化為0,對(duì)于執(zhí)行序列中的每個(gè)節(jié)點(diǎn),如果節(jié)點(diǎn)的扇入數(shù)量等于0,那么 i加1,如果 i大于 cost,則將 i的值賦予 cost;如果節(jié)點(diǎn)的扇入數(shù)量不等于0,那么 i加1,如果 i大于 cost,則將 i的值賦予 cost;獲取節(jié)點(diǎn)的子節(jié)點(diǎn)集合 child?nodes,對(duì)于 child? nodes中的每個(gè)節(jié)點(diǎn),將節(jié)點(diǎn)的扇出數(shù)量減1,如果該節(jié)點(diǎn)的扇出數(shù)量變成0,那么 i的值減1; 19、按照上述成本算法計(jì)算執(zhí)行序列中的每個(gè)節(jié)點(diǎn)之后獲得的最終 cost,即為該執(zhí)行序列的映射成本值。 20、作為優(yōu)選,步驟s1.3中,利用智能算法結(jié)合提出的成本算法獲得電路中根節(jié)點(diǎn)的執(zhí)行順序 currentroots,具體過程為: 21、提出智能算法:使用dag表示的邏輯網(wǎng)絡(luò) n作為智能算法的輸入,以 currentroots作為智能算法的輸出,初始化:計(jì)數(shù)器 count為0、初始溫度 inittemp為10、最終溫度 finaltemp為0.01、冷卻率 coolrate為0.8,獲取電路中初始的根節(jié)點(diǎn)集合 initialroots;以 initialroots的初始的根節(jié)點(diǎn)的存儲(chǔ)索引從小到大的順序作為初始的根節(jié)點(diǎn)的執(zhí)行順序,按照初始的根節(jié)點(diǎn)的執(zhí)行順序以及提出的子節(jié)點(diǎn)收集方法,獲取初始的執(zhí)行序列;使用提出的成本算法獲取電路的初始映射成本 oldcost; 22、其中,提出的子節(jié)點(diǎn)收集方法為:針對(duì)某個(gè)節(jié)點(diǎn) m,選取 m的子節(jié)點(diǎn)時(shí),首先選取映射成本值更高的子節(jié)點(diǎn),如果映射成本值相同,則選取具有最小的最大扇出層級(jí)的子節(jié)點(diǎn);如果最小的最大扇出層級(jí)相同,則按照dag中節(jié)點(diǎn)的存儲(chǔ)索引,按照從小到大的順序選取節(jié)點(diǎn); 23、當(dāng)初始溫度大于最終溫度時(shí),進(jìn)入外層循環(huán);當(dāng)計(jì)數(shù)器的值小于1000時(shí),進(jìn)入內(nèi)層循環(huán);24、在內(nèi)層循環(huán)中,隨機(jī)交換 initialroots中的兩個(gè)根節(jié)點(diǎn),得到新的 initialroots,以新的 initialroots的根節(jié)點(diǎn)的存儲(chǔ)索引從小到大的順序作為新的根節(jié)點(diǎn)的執(zhí)行順序,再按照新的根節(jié)點(diǎn)的執(zhí)行順序以及提出的子節(jié)點(diǎn)收集方法,獲得新的執(zhí)行序列 newgates,使用提出的成本算法計(jì)算新的映射成本 newcost,再計(jì)算對(duì)應(yīng)的接受概率 accp_prob,計(jì)算公式如下: 25、,26、利用隨機(jī)數(shù)生成器生成一個(gè)0到1之間的隨機(jī)數(shù),如果生成的隨機(jī)數(shù)小于 accp_ prob的值,則將 newcost的值賦給 oldcost,并將 initialroots的值賦給 currentroots,然后將 count的值加1;當(dāng) count的值大于1000時(shí),結(jié)束內(nèi)層循環(huán); 27、每次內(nèi)層循環(huán)結(jié)束時(shí),計(jì)算 inittemp與 coolrate的乘積以更新 inittemp的值;當(dāng) inittemp的值小于或等于 finaltemp的值時(shí),結(jié)束外層循環(huán),返回 currentroots。 28、作為優(yōu)選,步驟s1.4的具體過程為:按照根節(jié)點(diǎn)的執(zhí)行順序,對(duì)于每一個(gè)根節(jié)點(diǎn),利用提出的子節(jié)點(diǎn)收集方法遞歸地收集子節(jié)點(diǎn)并獲得對(duì)應(yīng)的執(zhí)行序列,按照順序?qū)?zhí)行序列中的節(jié)點(diǎn)依次映射到由多個(gè)憶阻器單元組成的憶阻器陣列上,并生成對(duì)應(yīng)的微操作符,其中,微操作符包含映射所需憶阻器單元的數(shù)量、映射所需計(jì)算周期以及每一個(gè)計(jì)算周期對(duì)應(yīng)的具體的計(jì)算操作。29、作為優(yōu)選,步驟s2的具體過程為:30、通過微操作符解析器解析微操作符的文本文件,并將其轉(zhuǎn)化為bench格式描述的lut網(wǎng)絡(luò);31、使用abc讀入以verilog或者blif格式描述的布爾函數(shù),在驗(yàn)證過程中作為設(shè)計(jì)規(guī)范,將設(shè)計(jì)規(guī)范轉(zhuǎn)換成aig網(wǎng)絡(luò),并使用abc將aig網(wǎng)絡(luò)與lut網(wǎng)絡(luò)搭建miter電路,得到對(duì)應(yīng)的cnf文件;32、使用開源的sat求解器kissat求解cnf文件,如果結(jié)果是unsat,則表明映射后生成的微操作符與設(shè)計(jì)規(guī)范之間是邏輯等價(jià)的,否則,映射后生成的微操作符與設(shè)計(jì)規(guī)范之間是邏輯不等價(jià)的;33、通過微操作符解析器將微操作符中的憶阻器單元索引解析并且存儲(chǔ)為帶有標(biāo)記值的二維數(shù)組,其中:該二維數(shù)組中-2開頭的一維數(shù)組表示首次初始化輸出憶阻器單元為低阻態(tài),即邏輯‘1’;該二維數(shù)組中-1開頭的一維數(shù)組表示運(yùn)算過程中重用憶阻器,即將已經(jīng)使用過的憶阻器單元初始化為低阻態(tài),即邏輯‘1’;34、二維數(shù)組中的每一個(gè)一維數(shù)組都代表微操作符的一個(gè)計(jì)算周期,每個(gè)計(jì)算周期中,第一個(gè)元素表示輸出憶阻器單元的索引,其余元素表示輸入憶阻器單元對(duì)應(yīng)的索引;順序地檢查每一個(gè)計(jì)算周期是否滿足條件:輸出憶阻器單元被初始化為低阻態(tài)且輸入憶阻器單元在此前的計(jì)算周期中使用過,如果二維數(shù)組中的所有計(jì)算周期均滿足上述條件,則設(shè)計(jì)規(guī)則驗(yàn)證成功;如果有一個(gè)計(jì)算周期不滿足上述條件,則設(shè)計(jì)規(guī)則驗(yàn)證失敗。35、與現(xiàn)有技術(shù)相比,本發(fā)明具有如下優(yōu)點(diǎn):36、(1)本發(fā)明提出的基于憶阻器輔助邏輯的邏輯綜合與驗(yàn)證方法的映射結(jié)果更好并且自動(dòng)化程度更高。本發(fā)明方法能夠根據(jù)電路的拓?fù)湫畔?zhǔn)確計(jì)算出電路中每個(gè)節(jié)點(diǎn)完成映射所需的成本值。相比于傳統(tǒng)的方法,本發(fā)明不僅成本函數(shù)更加準(zhǔn)確,而且能夠得到更好的執(zhí)行序列。通過實(shí)例驗(yàn)證,本發(fā)明方法得到的憶阻器單元的數(shù)量得到有效降低。37、(2)本發(fā)明方法中的邏輯等價(jià)性和設(shè)計(jì)規(guī)則驗(yàn)證能夠?qū)壿嬀C合步驟生成的微操作符進(jìn)行準(zhǔn)確的驗(yàn)證。相比于傳統(tǒng)的基于憶阻器輔助邏輯的邏輯綜合流程中缺少對(duì)映射結(jié)果的驗(yàn)證,本發(fā)明中的驗(yàn)證方法彌補(bǔ)了相應(yīng)的缺失。本發(fā)明方法的驗(yàn)證步驟能夠成功地探測(cè)邏輯綜合步驟生成的微操作符中的錯(cuò)誤,再次證明了驗(yàn)證操作的重要性。當(dāng)驗(yàn)證不通過的時(shí)候,能夠輸出相應(yīng)的信息,從而能夠快速定位到錯(cuò)誤。針對(duì)本發(fā)明方法中邏輯綜合步驟的結(jié)果,驗(yàn)證結(jié)果均顯示正確。相比于人工推導(dǎo)小案例的驗(yàn)證方法以及基于仿真的驗(yàn)證方法,本發(fā)明提出的形式化的驗(yàn)證方法更加的準(zhǔn)確、可靠、完備。38、(3)在具體的優(yōu)選方案中,本發(fā)明通過考慮電路的拓?fù)湫畔ⅲ绕涫嵌嗌瘸龉?jié)點(diǎn)的信息,提出了準(zhǔn)確的成本算法。對(duì)于電路中以每個(gè)節(jié)點(diǎn)作為根節(jié)點(diǎn)的執(zhí)行序列,能夠準(zhǔn)確的計(jì)算出對(duì)應(yīng)的映射成本。同時(shí)結(jié)合智能算法,能夠得到高質(zhì)量的電路中根節(jié)點(diǎn)的執(zhí)行順序。在之后的按照根節(jié)點(diǎn)的執(zhí)行順序遞歸收集子節(jié)點(diǎn)的過程中,考慮電路中節(jié)點(diǎn)的成本值以及節(jié)點(diǎn)的扇出層級(jí)信息。最后按照得到的高質(zhì)量的執(zhí)行序列進(jìn)行映射。本發(fā)明方法不僅減少了憶阻器單元的數(shù)量,而且計(jì)算周期的增加也十分有限。本發(fā)明方法填補(bǔ)了現(xiàn)有技術(shù)的缺失,不僅能夠有效地驗(yàn)證映射結(jié)果的正確性,而且驗(yàn)證耗費(fèi)的時(shí)間較短。針對(duì)iscas’85以及iwls’93測(cè)試集上的映射結(jié)果表明,本發(fā)明方法在憶阻器數(shù)量的使用上分別減少了13%和10%,計(jì)算周期僅僅分別增加了1%和2%。當(dāng)前第1頁12當(dāng)前第1頁12
當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
怀化市| 正镶白旗| 宁城县| 栾城县| 西华县| 新竹市| 从化市| 沙坪坝区| 广灵县| 紫云| 博湖县| 江北区| 疏附县| 石景山区| 星座| 海丰县| 湘潭市| 收藏| 新津县| 司法| 若尔盖县| 伊金霍洛旗| 清原| 册亨县| 旬邑县| 米脂县| 新晃| 沂源县| 大庆市| 德钦县| 营山县| 巴林左旗| 临潭县| 盘山县| 德安县| 南澳县| 灵丘县| 临海市| 晋州市| 正镶白旗| 内江市|