本(běn)文(wén)为(wèi)明(míng)德揚原創文(wén)章(zhāng),轉(zhuǎn)载請注明(míng)出(chū)处!
在(zài)綜合时(shí)發(fà)現(xiàn)会(huì)有(yǒu)很多(duō)如(rú)下(xià)警告出(chū)現(xiàn):has a constant value of 0 in block
意(yì)思(sī)是(shì)該信(xìn)号(hào)的(de)值始終(zhōng)为(wèi)0,在(zài)优化(huà)过(guò)程中(zhōng)可(kě)能(néng)被(bèi)优化(huà)。
但是(shì)該信(xìn)号(hào)为(wèi)數據(jù)輸入(rù),是(shì)不(bù)可(kě)以(yǐ)被(bèi)优化(huà)的(de),所(suǒ)以(yǐ)找(zhǎo)到(dào)該代(dài)碼处查找(zhǎo)問(wèn)題(tí)。
檢查代(dài)碼後(hòu),在(zài)此(cǐ)always块(kuài)中(zhōng)并未發(fà)現(xiàn)f2p_data_in信(xìn)号(hào)的(de)書(shū)写有(yǒu)何問(wèn)題(tí)。所(suǒ)以(yǐ)嘗試查找(zhǎo)是(shì)否是(shì)與(yǔ)f2p_data_in信(xìn)号(hào)相關(guān)或(huò)者(zhě)相連(lián)接的(de)信(xìn)号(hào)出(chū)現(xiàn)問(wèn)題(tí),導致(zhì)該警告的(de)出(chū)現(xiàn)。
從代(dài)碼可(kě)以(yǐ)分(fēn)析,f2p_data_in一(yī)直(zhí)为(wèi)0,有(yǒu)可(kě)能(néng)是(shì)条(tiáo)件(jiàn)一(yī)直(zhí)沒(méi)滿足,也(yě)有(yǒu)可(kě)能(néng)是(shì)条(tiáo)件(jiàn)滿足的(de)时(shí)候,data_out一(yī)直(zhí)为(wèi)0。
情(qíng)況不(bù)太明(míng)确,先(xiān)排除是(shì)不(bù)是(shì)data_out的(de)影響。方(fāng)法如(rú)下(xià):将图(tú)中(zhōng)1和(hé)2处的(de)data_out信(xìn)号(hào)改成(chéng)固定(dìng)輸入(rù)值,16’hffff,和(hé) 16’h0000 ,修改後(hòu)重(zhòng)新綜合發(fà)現(xiàn)之前(qián)出(chū)現(xiàn)的(de)警告并未出(chū)現(xiàn)。这(zhè)说(shuō)明(míng)了(le)条(tiáo)件(jiàn)是(shì)有(yǒu)滿足的(de)时(shí)候的(de),問(wèn)題(tí)應(yìng)該出(chū)現(xiàn)在(zài)data_out信(xìn)号(hào)上(shàng)。
然後(hòu)找(zhǎo)到(dào)data_out輸出(chū)模块(kuài)查看(kàn)問(wèn)題(tí)。
此(cǐ)always块(kuài)就(jiù)是(shì)对(duì)data_out这(zhè)个(gè)輸入(rù)信(xìn)号(hào)打(dǎ)2拍。按照前(qián)面(miàn)的(de)思(sī)路(lù),将图(tú)中(zhōng)rx_done位置修改为(wèi)1,查看(kàn)情(qíng)況是(shì)否與(yǔ)data_out有(yǒu)關(guān)(将之前(qián)給(gěi)f2p_data_in賦固定(dìng)值的(de)操作取(qǔ)消)。
重(zhòng)新綜合後(hòu)發(fà)現(xiàn),警告也(yě)沒(méi)有(yǒu)出(chū)現(xiàn),说(shuō)明(míng)該警告的(de)生(shēng)成(chéng)和(hé)data_out无關(guān),而(ér)是(shì)與(yǔ)条(tiáo)件(jiàn)rx_done信(xìn)号(hào)有(yǒu)關(guān),可(kě)能(néng)該信(xìn)号(hào)一(yī)直(zhí)为(wèi)0。
下(xià)一(yī)步找(zhǎo)到(dào)rx_done信(xìn)号(hào)模块(kuài)查找(zhǎo)問(wèn)題(tí)。
在(zài)檢查該模块(kuài)时(shí)發(fà)現(xiàn),rx_done为(wèi)1的(de)条(tiáo)件(jiàn)并不(bù)成(chéng)立,所(suǒ)以(yǐ)rx_done一(yī)直(zhí)无法为(wèi)1,導致(zhì)後(hòu)續data_out一(yī)直(zhí)輸出(chū)为(wèi)0。
總(zǒng)結:
1. 对(duì)于(yú)警告等信(xìn)息,一(yī)定(dìng)要(yào)读(dú)懂,并理解(jiě)其含義。例如(rú)本(běn)課说(shuō)某信(xìn)号(hào)一(yī)直(zhí)为(wèi)0,这(zhè)是(shì)問(wèn)題(tí),那(nà)为(wèi)什麼(me)?則是(shì)要(yào)根(gēn)據(jù)这(zhè)个(gè)含義去(qù)分(fēn)析。
2. 对(duì)于(yú)難以(yǐ)分(fēn)析的(de),可(kě)以(yǐ)嘗試修改代(dài)碼,以(yǐ)方(fāng)便验(yàn)證。注意(yì),这(zhè)只(zhī)是(shì)为(wèi)了(le)验(yàn)證某種(zhǒng)設想(xiǎng),验(yàn)證完後(hòu),代(dài)碼要(yào)改回(huí)来(lái)。















