freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

哈工程dsp專業(yè)課課件第三章-文庫吧在線文庫

2025-10-14 21:03上一頁面

下一頁面
  

【正文】 bit的輸入, 它與 PREG的輸出相連 移位器完成移位操作,所 有 32位的數(shù)據(jù)被送入 CALU, 而 16位的數(shù)據(jù)則被存儲(chǔ)在數(shù) 據(jù)存儲(chǔ)器中。 以下是對(duì)乘法器的輸入和輸出的描述。 SXM=l 輸入移位器的輸出具有符號(hào)擴(kuò)展 。 輸入移位器的 15位到 0位接收程序存儲(chǔ)器 (PRDB)或數(shù)據(jù)存儲(chǔ)器 (DRDB)的一個(gè) 16bit輸入。 節(jié)能方式 ( ) C2XX器件程序控制的特點(diǎn)及其處理過程 ( ~) 涉及到對(duì)一個(gè)或多個(gè)指令塊執(zhí)行順序的控制,通常,程序流是順序的, C2XX在連續(xù)的程序存儲(chǔ)器地址執(zhí)行指令操作。 狀態(tài)寄存器決定處理器工作方式、尋址指針以及顯示不同的處理器狀態(tài)和算術(shù)邏輯結(jié)果。 輸入 程序讀總線 (PRDB) 該輸入為一個(gè)指令操作時(shí)給定的常數(shù)。 對(duì)許多 (并非所有的 )指令而言 , 符號(hào)擴(kuò)展方式位(SXM), 即狀態(tài)寄存器 ST1的第 l0位 , 決定著在 CALU計(jì)算中是否采用符號(hào)擴(kuò)展: SXM=0 不采用符號(hào)擴(kuò)展 。 除在無符號(hào)乘法 (MPYU指令 )周期外 , 被乘的兩個(gè)數(shù)作二進(jìn)制補(bǔ)碼處理 。 乘積定標(biāo)移位器 乘積定標(biāo)移位器 (乘積移位器 )用于乘積寄存器(PREG)值的定標(biāo)。 移位方式的采用取決于狀態(tài)寄存器 ST1的乘積移位方式 (PM)值。 接收 CALU輸出 , 并 且可以借助于進(jìn)位位 (C)執(zhí)行累加器中數(shù) 值的移位 。 如果 SXM=0,則禁止符號(hào)擴(kuò)展。 當(dāng)累加器加不產(chǎn)生一個(gè)進(jìn)位時(shí) (例外:當(dāng)ADD指令使用 16bit移位且不產(chǎn)生進(jìn)位時(shí),則不影響C)。 溢出標(biāo)志位 (OV) OV是狀態(tài)寄存器 ST0的第 12位。 圖 2顯示了與圖 1同樣的累加器值被左移 6位以及移位后的低位字被存儲(chǔ)的情況 。 設(shè)置數(shù)值的方法有 它只修改輔助寄存器及 ARP 它可通過數(shù)據(jù)讀總線 DRDB向狀態(tài)寄存器 ST0置入一個(gè)數(shù)據(jù)存儲(chǔ)器的值 MAR指令 LST指令 支持間接尋址 的任意指令 當(dāng)指令完成后,當(dāng)前輔助寄存器的內(nèi)容可通過 ARAU執(zhí)行 16位無符號(hào)算術(shù)運(yùn)算,實(shí)現(xiàn)地址更新。 輔助寄存器可用作軟件計(jì)數(shù)器 輔助寄存器除用于指示數(shù)據(jù)存儲(chǔ)器地址外,它還可用于其它目的。 +為保留位,總是為 1。關(guān)于 ARP在間接尋址中的使用詳情,請(qǐng)參考第 章節(jié) 間接尋址方式 。有關(guān)詳情,請(qǐng)參閱第 直接尋址方式 。 INTM=l禁止所有可屏蔽的中斷。注意: PREA的內(nèi)容保持不變; PREG值被復(fù)制到乘積移位器,并在移位器中進(jìn)行移位處理:可通過 SPM和 LST指令裝載 PM。 復(fù)位可設(shè)置 SXM為 l。 XF可被 LST指令修改復(fù)位時(shí), XF被設(shè)為 1。 另外 , 也可將堆棧用作暫存存儲(chǔ)器 。 轉(zhuǎn)移 在執(zhí)行轉(zhuǎn)移指令后, PC裝載操作數(shù) (長立即數(shù) )子程序調(diào)用和返回, PC將下一個(gè)指令地址存入堆棧,并將操作數(shù)裝入 PC,返回指令將返回地址從堆棧彈回到 PC以便繼續(xù)執(zhí)行程序。 堆棧( STACK) 當(dāng)返回地址不需要 8級(jí)堆棧時(shí)返 , 堆棧可用來存儲(chǔ)子程序或中斷服務(wù)程序中的有關(guān)數(shù)據(jù) , 或用作其它用途的存儲(chǔ)器 。 因此 , 如果在 POP指令之前發(fā)生 8次以上的連續(xù)壓入 , 則數(shù)據(jù)將會(huì)丟失 (發(fā)生堆棧溢出 )。 完成這些指令操作后 ,MSTACK值被彈回到程序地址生成邏輯 。舉一個(gè)最簡單的對(duì)存儲(chǔ)器進(jìn)行讀寫操作的指令,如下圖所示,指令 1至指令 3均為存、取數(shù)指令,對(duì)馮 .諾曼結(jié)構(gòu)處理器,由于取指令和存取數(shù)據(jù)要從同一個(gè)存儲(chǔ)空間存取,經(jīng)由同一總線傳輸,因而它們無法重疊執(zhí)行,只有一個(gè)完成后再進(jìn)行下一個(gè)。 無條件轉(zhuǎn)移、調(diào)用及返回 1. 無條件轉(zhuǎn)移 當(dāng)碰到無條件轉(zhuǎn)移指令時(shí) , 它總是被無條件執(zhí)行 。 裝入 PC的地址既可以來自轉(zhuǎn)移指令的第二個(gè)字或累加器的低16位字 。 在執(zhí)行返回指令時(shí) , 將向 PC裝載棧頂?shù)闹?, 并從該棧頂值所指定的地址開始繼續(xù)執(zhí)行程序 。 例如 可同時(shí)測試 TC、 C和 BIO, 但不能同時(shí)測試 C和 NC。 由于條件轉(zhuǎn)移使用的條件是由先前指令的執(zhí)行結(jié)果所確定的,因此,條件轉(zhuǎn)移比無條件轉(zhuǎn)移多用一個(gè)周期。該返回指令將從堆棧中提取返回地址并迫使處理器繼續(xù)執(zhí)行調(diào)用程序。該返回指令使返回地址退出堆棧并進(jìn)入程序計(jì)數(shù)器 (PC)。 如果所有的條件被滿足,則這兩條指令將退出流水線操作以使這兩條指令不被執(zhí)行而執(zhí)行調(diào)用程序。 對(duì)諸如 NORM、 MAC和 SUBC等指令來說 , 重復(fù)特性是非常有益的 ,當(dāng)這些指令被重復(fù)時(shí) , 程序存儲(chǔ)器的地址總線和數(shù)據(jù)總線可以與數(shù)據(jù)存儲(chǔ)器的地址總線 , 數(shù)據(jù)總線并行操作 ,因而可以節(jié)約第二操作數(shù)的提取時(shí)間 。 可被一條指令請(qǐng)求 硬件中斷 如果兩種類型的硬件中斷同時(shí)被觸發(fā),則 C2XX根據(jù)所設(shè)置的優(yōu)先級(jí)進(jìn)行處理。如果中斷是可屏蔽的,則必須滿足某種條件以便 C2XX對(duì)它進(jìn)行確認(rèn)。 C2XX器件上有兩個(gè)含有中斷標(biāo)志位的寄存器 中斷標(biāo)志寄存器 (IFR) 中斷控制寄存器 (ICR) 它是一個(gè) 16bit的存儲(chǔ)器映射寄存器 (地址為數(shù)據(jù)存儲(chǔ)器空間的 0006h單元 )。 優(yōu)先級(jí)為最高 如果同時(shí)發(fā)生一個(gè)以上硬件中斷請(qǐng)求,則C2XX就根據(jù)所設(shè)置的優(yōu)先級(jí)對(duì)它們進(jìn)行處理。 INTM不影響復(fù)位。 這表明中斷請(qǐng)求已被掛起或者正等待 CPU中斷的確認(rèn) 。 XINT中斷未被掛起 XINT中斷己被掛起 XINT=0 XINT=1 第 3位 RINT(接收中斷標(biāo)志 ) 同步串行器的接收中斷位。如果 INT3(非 )有中斷請(qǐng)求,則 INT2(非 )/INT3(非 )和(ICR的 )FINT3均被自動(dòng)設(shè)為 1。 HOLD/INT1=0 HOLD(非 )/INT1(非 )中斷未被掛起 HOLD/INT1=l HOLD(非 )/INT1(非 )中斷己被掛起 可以了解是否有已披掛起的中斷 . 可以清除己披掛起的中斷 。 中斷屏蔽寄存器 (IMR) 16bit的中斷屏蔽寄存器 (IMR)被分配在數(shù)據(jù)存儲(chǔ)器空間的 00004h地址單元。 1. 控制 HOLD(非 )/INT1(非 )引腳 HOLD(非 )/INT1(非 )引腳用于觸發(fā)INT1(非 )中斷 , 以及向 CPU發(fā)送一個(gè)HOLD信號(hào) 。 為了可以單獨(dú)使用 INT2(非 )和 INT3(非 ),ICR提供了 2個(gè)屏蔽位 (MINT2和 MINT3)和兩個(gè)標(biāo)志位 (FINT2和 FINT3)。 通過向 ICR標(biāo)志位 (如 IFR標(biāo)志位 )寫入1,可以清除該標(biāo)志位。 INT3(非 )不被屏蔽。如果應(yīng)用程序需要清除這些標(biāo)志,則清除必須在中斷服務(wù)程序中完成。 INT2(非 )和 INT3(非 )被屏蔽。如果 NMI(非 )引腳不被使用,則它應(yīng)被置為高電平,以防止意外中斷。軟件與操作不能設(shè)置 IFR標(biāo)志位;只有適當(dāng)?shù)挠布?qǐng)求可以設(shè)置。 在中斷被請(qǐng)求并被確認(rèn)之后,CPU將根據(jù)中斷矢量轉(zhuǎn)移到相應(yīng)的ISR。如果這樣,有必要備份一個(gè)通用的保存和恢復(fù)程序,然后在每次中斷時(shí)使用該程序。如果使用調(diào)試操作,則該級(jí)額外堆棧被內(nèi)部使用 )。 為了使 CPU完成返回操作,在執(zhí)行尺 RET指令之后,中斷也將被禁止,直到程序返回后至少一條指令被執(zhí)行。 1. 流水線操作保護(hù)的等待時(shí)間 多周期指令增加了額外周期以便清空流水線。 最大等待時(shí)間受等待狀態(tài)和流水線操作保護(hù)的影響。 C2XX具有阻止非常中斷嵌套的特性。每當(dāng)執(zhí)行一個(gè)中斷或進(jìn)入一個(gè)中斷服務(wù)程序時(shí),返回地址將被壓入硬件堆棧。必須對(duì) ISR進(jìn)行設(shè)計(jì)以便保存并恢復(fù)其它重要的寄存器值。 當(dāng) NMI(非 )指令被執(zhí)行時(shí) , INTM置 l可以禁止所有可屏蔽中斷 。 指令操作數(shù) (K)表示 CPU將轉(zhuǎn)移到哪個(gè)中斷矢量單元。 NMI(非 ) 當(dāng) NMI(非 ) (NMI(非 )引腳,或 NMI指令 )被激活時(shí),處理器迫使程序控制轉(zhuǎn)向矢量單元 24h。如果 IFR的標(biāo)志位和 IMR的標(biāo)志位被置 1,并且 INTM位為0(可屏蔽中斷被允許 ),則 CPU將確認(rèn)中斷。 FINT2和 IFR的第 1位(INT2/INT3)均不被 INT2(非 )引腳上的中斷請(qǐng)求所設(shè)置。 INT3(非 )未被掛起 INT3(非 )已被掛起 FNT3=0 MINT3=0 MINT3=1 第 2位 FINT2中斷 2標(biāo)志 如果 MINT2=1,則 INT2(非 )引腳上的中斷請(qǐng)求將 FINT2和 IFR的第 1位 (INT2/INT3)設(shè)置為 1。 只要 INT2/INT3未置為 1, CPU就接收不到中斷請(qǐng)求。 引腳為負(fù)邊沿觸發(fā),這樣,該此引腳可被適當(dāng)設(shè)置以便啟動(dòng)一個(gè)標(biāo)準(zhǔn)的中斷 (INT1(非 ))。 第 5~15位 Reserved。 器件復(fù)位可清除所有的 IFR值 。 第 0位為 HOLD(非 )或 INT1(非 )的中斷標(biāo)志位。 TINT中斷未被掛起 TINT中斷己被掛起。為避免重復(fù)中斷,則在中斷服務(wù)程序中向該位寫入 1。 它將 INTR指令裝入指令總線, INTR指令強(qiáng)迫 CPU轉(zhuǎn)移到相應(yīng)的中斷矢量單元 當(dāng) CPU確認(rèn)一個(gè)可屏蔽硬件中斷時(shí) CPU從程序存儲(chǔ)器的中斷矢量單元提取一條轉(zhuǎn)移指令,從而轉(zhuǎn)入相應(yīng)的中斷服務(wù)程序 在 CPU轉(zhuǎn)移到中斷服務(wù)程序時(shí), INTM位被設(shè)置為 1,這就阻止了所有其它來自硬件的可屏蔽中斷的執(zhí)行 注意 INTR指令也可被軟件直接啟動(dòng),因此, INTR指令也可直接啟動(dòng)可屏蔽中斷的中斷服務(wù)程序。 INT2和 INT3中斷共同使用其中一位。 IFR含有所有可屏蔽中斷的標(biāo)志位。 下表列出了 C2XX(除 C209外 )的中斷及其中斷矢量地址。通過軟件可屏蔽或啟動(dòng) (解除屏蔽 )該硬件中斷。 通常,中斷是由那些需要向 C2XX傳送或從 C2XX提取數(shù)據(jù)的硬件設(shè)備產(chǎn)生。 當(dāng)從一個(gè)數(shù)據(jù)存儲(chǔ)器單元讀取計(jì)數(shù)值時(shí) ,RPTC可用作一個(gè) 16bit的計(jì)數(shù)器; 如果計(jì)數(shù)值被設(shè)定為一個(gè)操作常數(shù) ,RPTC為 8bit計(jì)數(shù)器 。 對(duì)返回渠道的選擇取決于被處理的數(shù)據(jù)。 如果條件不被滿足 , 則這兩條指令將被執(zhí)行 , 而不是執(zhí)行調(diào)用指令 。 如果所有的條件被滿足,則向 PC裝載調(diào)用指令的第 2個(gè)字 (它包含子程序的起始地址 )。 該轉(zhuǎn)移指令的第二個(gè)字包含了轉(zhuǎn)移地址;并且在該地址繼續(xù)執(zhí)行指令 。 如果多重條件被列出,則必須滿足所有條件才能執(zhí)行指令。 無條件調(diào)用指令 CALL CALA 調(diào)用累加器指定地址單元的子程序 在無條件返回指令進(jìn)入流水線的執(zhí)行階段前 , 隨后的兩個(gè)指令字已被提取 。 無條件轉(zhuǎn)移指令 B 轉(zhuǎn)移 BACC 轉(zhuǎn)移到累加器所指定的地址 2. 無條件調(diào)用 當(dāng)碰到無條件調(diào)用指令時(shí),它總是被無條件執(zhí)行。 將返回地址 (調(diào)用操作之后的指令地址 )壓入棧頂 。 C2XX流水線具有 4個(gè)獨(dú)立的操作階段: 取指令 譯碼 取操作數(shù) 執(zhí)行 由于 4個(gè)操作階段是獨(dú)立的 (因?yàn)閮?nèi)部有 6套總線 ),因此 , 這些操作可以交疊地進(jìn)行 。 POP操作 程序地址生成邏輯在執(zhí)行某些指令之前使用 16bit的一級(jí) MSTACK來存儲(chǔ)一個(gè)返回地址 。 PSHD和 POPD 這兩條指令允許你在數(shù)據(jù)存儲(chǔ)器中建立一個(gè)堆棧 , 以便處理超過 8級(jí)的子程序或中斷程序嵌套 。使用 BACC(轉(zhuǎn)移到累加器中的地址 )或 CALA(調(diào)用累加器指定單元的子程序 )指令可以執(zhí)行計(jì)算 GOTO操作。 通過程序地址總線 (PAB), 可以從該地址 (位于程序存儲(chǔ)器中 )提取一個(gè)指令 ,然后將指令裝入指令寄存器 。在提取指令時(shí) , PC對(duì)內(nèi)部和外部程序存儲(chǔ)器尋址 。 BIT、 BITT、CMPR、 LST和 NORM指令均可影響 TC值。 PM=10, TREG的輸出值左移 4位 (LSB被零填充 )送入 CALU或數(shù)據(jù)存儲(chǔ)器。 OVW 溢出方式位 OVM決定 CALU如何處理溢出情況。 INTM不影響不可屏中斷
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1