在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

你們會(huì)設(shè)計(jì)CPU取指執(zhí)行電路嗎?

FPGA之家 ? 來(lái)源:數(shù)字積木 ? 作者:數(shù)字積木 ? 2021-07-27 16:55 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

【前言】

最近手上寫(xiě)了一個(gè)練手的小項(xiàng)目,項(xiàng)目的大致要求是實(shí)現(xiàn)一個(gè)取指,執(zhí)行電路。取指的指令預(yù)存在,從ROM中讀取指令后,根據(jù)預(yù)定的解碼規(guī)則,對(duì)指令進(jìn)行解碼,并執(zhí)行相對(duì)應(yīng)的操作。發(fā)出來(lái)和大家共同分享。

該工程的設(shè)計(jì)要求如下:

ram模塊中,儲(chǔ)存有初始化的指令數(shù)據(jù)。我們要設(shè)計(jì)一個(gè)取指電路,并能根據(jù)不同的指令執(zhí)行不同的操作。指令數(shù)據(jù)為16bit.

指令編碼定義如下:

如果指令代碼為0,則下一個(gè)狀態(tài)為空閑。如果指令的低位8位為0,高位8位非0,則讀取指定高位8位的存儲(chǔ)器,并將其寫(xiě)入obuf0。如果指令的低8位非0,且高8位也不是0,則將下8位作為數(shù)據(jù),寫(xiě)入地址為上8位的存儲(chǔ)器中。

List4顯示了指令獲取電路。它實(shí)例化了五個(gè)模塊:PC0(程序計(jì)數(shù)器、8位計(jì)數(shù)器)、Ir0(指令寄存器、16位計(jì)數(shù)器)、OBUF0(輸出緩沖器、16位計(jì)數(shù)器)、STATE0(狀態(tài)機(jī))和RAM0(存儲(chǔ)器,8位256字塊RAM)。模塊pc0用于指定要讀取的地址,以便從ram0獲取(提取)指令代碼。指令代碼存儲(chǔ)在IR0中。

此指令獲取操作在兩種狀態(tài)下執(zhí)行:fetcha和fetchb。fetcha用于取地址操作,該地址作為讀取ram中指令的地址,fetchb用于指令寄存操作,將指令寄存到指令寄存器中。

在execa和execb狀態(tài)下,執(zhí)行表1中的操作。如果存儲(chǔ)在IR0中的指令代碼為0,則下一個(gè)狀態(tài)為空閑。如果指令的低位8位為0,高位8位非0,則讀取指定高位8位的存儲(chǔ)器,并將其寫(xiě)入obuf0。如果指令的下8位非0,則將下8位寫(xiě)入地址為上8位的存儲(chǔ)器。

指令解碼列在table1中

頂層代碼如圖所示:

下面是該工程的測(cè)試模塊:

1796e308-eb92-11eb-a97a-12bb97331649.jpg

下面的ram模塊的代碼:

17b49bb4-eb92-11eb-a97a-12bb97331649.jpg

狀態(tài)控制模塊的代碼:

17c181d0-eb92-11eb-a97a-12bb97331649.png

計(jì)數(shù)器模塊的代碼:

17d38f1a-eb92-11eb-a97a-12bb97331649.png

設(shè)計(jì)說(shuō)明

該工程有以下模塊組成:

PC0(程序計(jì)數(shù)器、8位計(jì)數(shù)器)、

Ir0(指令寄存器、16位計(jì)數(shù)器)、

OBUF0(輸出緩沖器、16位計(jì)數(shù)器)、

STATE0(狀態(tài)機(jī))、

RAM0(存儲(chǔ)器,8位256字塊RAM)。

其中,PC0,IR0,OBUF0是例化計(jì)數(shù)器模塊得到的,該計(jì)數(shù)器模塊擁有計(jì)數(shù)和寄存數(shù)據(jù)兩個(gè)功能,分別由端口 inc 和 端口 load 控制。

當(dāng) inc有效時(shí),在下一個(gè)時(shí)鐘,會(huì)將計(jì)數(shù)器內(nèi)部的計(jì)數(shù)器自增1,并在q端輸出。

當(dāng)load信號(hào)有效時(shí),在下一個(gè)時(shí)鐘會(huì)將D端 的數(shù)據(jù)寄存到該計(jì)數(shù)器的寄存器中,并在Q端輸出。

PC0利用的是計(jì)數(shù)器的計(jì)數(shù)功能,用于產(chǎn)生取指令的地址信息。

IR0利用的是計(jì)數(shù)器的寄存功能,用于將ram中取出的指令暫時(shí)寄存。

OBUF0利用的是計(jì)數(shù)器的寄存功能,用于將輸出中暫時(shí)寄存。

在狀態(tài)機(jī)控制模塊中,設(shè)置了以下五個(gè)狀態(tài):

IDLE:空閑態(tài)。

FETCHA:取地址狀態(tài)。同時(shí)將程序計(jì)數(shù)器的內(nèi)部計(jì)數(shù)值加一。

FETCHB:取指令,指令寄存狀態(tài)。將從ram中讀出的指令寫(xiě)入到指令寄存器模塊中。

EXECA:指令解碼模塊,判斷指令的停止,讀,寫(xiě)控制信號(hào)。如果為寫(xiě)信號(hào),將指令的低8位作為數(shù)據(jù)寫(xiě)到高8位對(duì)應(yīng)的地址中。如果為讀指令,跳轉(zhuǎn)到EXECB狀態(tài),將指令的低8位輸出。如果停止信號(hào)為真3,跳轉(zhuǎn)到空閑狀態(tài)。

EXECB:執(zhí)行狀態(tài)。用于將指令的低8位輸出。

在ram模塊中,儲(chǔ)存有初始化的指令數(shù)據(jù)。

編輯:jq

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    11069

    瀏覽量

    216739

原文標(biāo)題:簡(jiǎn)單的CPU取指執(zhí)行電路設(shè)計(jì)

文章出處:【微信號(hào):zhuyandz,微信公眾號(hào):FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    CPU的各種指令和執(zhí)行流程

    在集成電路設(shè)計(jì)中,CPU的指令是計(jì)算機(jī)中央處理單元(CPU)用來(lái)執(zhí)行計(jì)算任務(wù)的基本操作指令集。這些指令是
    的頭像 發(fā)表于 04-18 11:24 ?784次閱讀

    RISC-V五級(jí)流水線CPU設(shè)計(jì)

    本文實(shí)現(xiàn)的CPU是一個(gè)五級(jí)流水線的精簡(jiǎn)版CPU(也叫PCPU,即pipeline),包括IF(指令)、ID(解碼)、EX(執(zhí)行)、MEM(內(nèi)存操作)、WB(回寫(xiě))。
    的頭像 發(fā)表于 04-15 09:46 ?678次閱讀
    RISC-V五級(jí)流水線<b class='flag-5'>CPU</b>設(shè)計(jì)

    CPU到GPU:渲染技術(shù)的演進(jìn)和趨勢(shì)

    和優(yōu)缺點(diǎn)CPU(CentralProcessingUnit)是計(jì)算機(jī)的中央處理器,它負(fù)責(zé)執(zhí)行各種程序和指令。CPU渲染是指使用CPU來(lái)執(zhí)行
    的頭像 發(fā)表于 02-21 11:11 ?714次閱讀
    從<b class='flag-5'>CPU</b>到GPU:渲染技術(shù)的演進(jìn)和趨勢(shì)

    料機(jī)DCS數(shù)據(jù)采集物聯(lián)網(wǎng)解決方案

    在火電廠中,堆料機(jī)承擔(dān)著儲(chǔ)存、輸送原料的重要任務(wù),通過(guò)PLC、DCS等執(zhí)行允許堆料、允許料、外圍料運(yùn)行、堆料機(jī)緊急停機(jī)、堆料運(yùn)行、堆
    的頭像 發(fā)表于 12-24 10:23 ?478次閱讀
    堆<b class='flag-5'>取</b>料機(jī)DCS數(shù)據(jù)采集物聯(lián)網(wǎng)解決方案

    Linux之CPU調(diào)度策略和CPU親和性

    一、調(diào)度策略 調(diào)度進(jìn)程 單個(gè) CPU一次只能執(zhí)行一個(gè)進(jìn)程,雖然 Linux 系統(tǒng)通過(guò)使用多任務(wù)同時(shí)處理多個(gè)進(jìn)程,但當(dāng)多個(gè)進(jìn)程同時(shí)運(yùn)行在一個(gè)CPU 上時(shí),它通過(guò)交錯(cuò)執(zhí)行這些進(jìn)程。 內(nèi)核使
    的頭像 發(fā)表于 12-05 16:38 ?1080次閱讀
    Linux之<b class='flag-5'>CPU</b>調(diào)度策略和<b class='flag-5'>CPU</b>親和性

    伺服驅(qū)動(dòng)系統(tǒng)對(duì)執(zhí)行元件的基本要求

    執(zhí)行元件具有高精度,以保證系統(tǒng)的運(yùn)動(dòng)控制精度。執(zhí)行元件的精度包括定位精度、重復(fù)定位精度和速度精度等。定位精度是執(zhí)行元件從一個(gè)位置移動(dòng)到另一個(gè)位置時(shí),實(shí)際到達(dá)位置與理論位置之間的誤差。
    的頭像 發(fā)表于 10-23 15:52 ?626次閱讀

    數(shù)控車床m99令的用法

    的循環(huán)調(diào)用,即當(dāng)程序執(zhí)行到M99令時(shí),數(shù)控系統(tǒng)會(huì)自動(dòng)返回到程序的開(kāi)始處,重新執(zhí)行程序,直到達(dá)到設(shè)定的循環(huán)次數(shù)或者滿足其他條件。  二、M99
    的頭像 發(fā)表于 10-23 15:52 ?2875次閱讀

    功率放大電路的轉(zhuǎn)換效率是什么

    功率放大電路的轉(zhuǎn)換效率是 功率放大電路的最大輸出功率與電源所提供的功率之比 。這一標(biāo)用于評(píng)估功率放大電路在將電源提供的功率轉(zhuǎn)換為輸出功率
    的頭像 發(fā)表于 10-09 15:50 ?2022次閱讀

    為什么外設(shè)要通過(guò)接口與CPU相連

    外設(shè)與CPU之間的連接是計(jì)算機(jī)系統(tǒng)中一個(gè)非常關(guān)鍵的部分。外設(shè)(Peripherals)是除了CPU、內(nèi)存和硬盤(pán)之外的所有設(shè)備,如鍵盤(pán)、鼠標(biāo)、打印機(jī)、顯示器等。這些設(shè)備需要與CPU進(jìn)行
    的頭像 發(fā)表于 09-30 14:10 ?2301次閱讀

    雙核cpu和單核cpu的區(qū)別

    理器核心連接起來(lái),從而提高計(jì)算能力。這種設(shè)計(jì)使得處理器能夠同時(shí)執(zhí)行多個(gè)任務(wù),提高計(jì)算效率和性能。 單核CPU :只有一個(gè)處理器核心,所有的計(jì)算任務(wù)都由這一個(gè)核心來(lái)完成。單核CPU在處理多任務(wù)時(shí)可能
    的頭像 發(fā)表于 09-24 16:17 ?6944次閱讀

    CPU主要參數(shù)有哪些

    CPU(Central Processing Unit,中央處理器)是計(jì)算機(jī)系統(tǒng)的核心部件,負(fù)責(zé)執(zhí)行程序指令、處理數(shù)據(jù)和進(jìn)行邏輯運(yùn)算。CPU的參數(shù)繁多,但其中一些關(guān)鍵參數(shù)對(duì)于理解和選擇CPU
    的頭像 發(fā)表于 09-10 11:51 ?2958次閱讀

    CPU故障現(xiàn)象有哪些

    CPU作為計(jì)算機(jī)系統(tǒng)的核心部件,其穩(wěn)定性和性能直接影響到整個(gè)計(jì)算機(jī)系統(tǒng)的運(yùn)行。當(dāng)CPU出現(xiàn)故障時(shí),會(huì)表現(xiàn)出多種不同的現(xiàn)象。以下是對(duì)CPU故障現(xiàn)象的詳細(xì)解析,包括常見(jiàn)的故障類型、具體表現(xiàn)
    的頭像 發(fā)表于 09-10 11:46 ?8258次閱讀

    如何用LM324做PI電路

    我想用你們的公司的LM324運(yùn)放設(shè)計(jì)一個(gè)PI調(diào)節(jié)電路,如下圖,但是我不知道 電路 中電阻,電容這些元器件具體怎樣取值,我只知道理論公式,不知道你們的實(shí)際使用時(shí),元器件值是怎樣
    發(fā)表于 09-03 07:24

    PD電誘騙芯片的妙用

    PD電快充協(xié)議芯片支持多種協(xié)議
    的頭像 發(fā)表于 08-15 10:25 ?753次閱讀
    PD<b class='flag-5'>取</b>電誘騙芯片的妙用

    Imagination CPU 系列研討會(huì) | RISC-V 平臺(tái)的性能分析和調(diào)試

    為了讓開(kāi)發(fā)者及工程師深入了解Imagination的CPU產(chǎn)品及相關(guān)解決方案,Imagination將陸續(xù)推出5期線上研討會(huì),包含:RISC-V平臺(tái)的性能分析和調(diào)試;RISC-V安全和全球平臺(tái)可信
    的頭像 發(fā)表于 08-10 08:28 ?528次閱讀
    Imagination <b class='flag-5'>CPU</b> 系列研討<b class='flag-5'>會(huì)</b> | RISC-V 平臺(tái)的性能分析和調(diào)試
    主站蜘蛛池模板: 亚洲天天综合网 | 2015xxxx欧美| 性欧美xxxx视频在线观看 | 91三级在线 | 一级做受毛片免费大片 | 手机看片国产精品 | 一级一黄在线观看视频免费 | 91在线免费视频 | 国产精品资源手机在线播放 | 日日噜噜夜夜狠狠久久aⅴ 日日噜噜夜夜狠狠久久丁香 | 精品一区 二区三区免费毛片 | 亚洲一区二区三区深夜天堂 | 欧美三级一级 | 爱爱的免费视频 | 免费看黄视频网站 | 国产经典三级在线 | 美女一级毛片免费观看 | 一区二区三区四区免费视频 | 手机看片神马午夜 | 色宅男看片午夜大片免费看 | 日本不卡一区二区三区视频 | 美女扒开尿口给男人桶视频免费 | 午夜视频在线观看www中文 | 天天摸天天操天天干 | 免费永久视频 | 亚洲乱亚洲乱妇41p国产成人 | 狠狠色狠色综合曰曰 | 国产三级黄色录像 | 四虎影院在线观看网站 | 亚洲一区二区影院 | 亚洲乱码卡一卡二卡三永久 | 午夜手机视频 | 色偷偷伊人 | 免费看大美女大黄大色 | 国产乱码一区二区三区四川人 | 操美女大逼逼 | 亚洲无线码一区在线观看 | 欧美色综合网站 | 亚洲欧美视频在线播放 | 草伊人| 亚洲天堂免费看 |