[{"data":1,"prerenderedAt":420},["ShallowReactive",2],{"navigation":3,"\u002Fverilog\u002Fmips5":144,"\u002Fverilog\u002Fmips5-surround":415},[4,36,53,86,131],{"title":5,"path":6,"stem":7,"children":8,"icon":35},"Golang","\u002Fgolang","1.golang\u002F1.index",[9,11,15,19,23,27,31],{"title":10,"path":6,"stem":7},"golang-各种golang学习以及使用过程中记录",{"title":12,"path":13,"stem":14},"gopls-官方gopls内置mcp server的基本使用","\u002Fgolang\u002Fgopls_mcp_usages","1.golang\u002F2.gopls_mcp_usages",{"title":16,"path":17,"stem":18},"实践-(一)创建简单的http服务器","\u002Fgolang\u002Fgo_http_simple_server","1.golang\u002F3.go_http_simple_server",{"title":20,"path":21,"stem":22},"wails入门系列(一)环境安装与demo","\u002Fgolang\u002Fwails_start","1.golang\u002F4.wails_start",{"title":24,"path":25,"stem":26},"wails入门系列(二)无边框应用的菜单栏以及窗口拖拽","\u002Fgolang\u002Fwails_frameless","1.golang\u002F5.wails_frameless",{"title":28,"path":29,"stem":30},"go\u002Fredis-redis中大数字自动转换成指数形式的处理","\u002Fgolang\u002Fredis_big_num","1.golang\u002F6.redis_big_num",{"title":32,"path":33,"stem":34},"go\u002F方法记录-局部坐标与世界坐标间的相互转换(位置\u002F方向)","\u002Fgolang\u002Fworld_local_transform","1.golang\u002F7.world_local_transform",false,{"title":37,"icon":35,"path":38,"stem":39,"children":40,"page":35},"瞎折腾","\u002Ftinkering","2.tinkering",[41,45,49],{"title":42,"path":43,"stem":44},"mi50显卡ubuntu运行大模型开坑(一)显卡准备以及驱动安装","\u002Ftinkering\u002Fmi50_gpu_llm_1","2.tinkering\u002F1.mi50_gpu_llm_1",{"title":46,"path":47,"stem":48},"mi50显卡ubuntu运行大模型开坑(二)使用llama.cpp部署Qwen3系列","\u002Ftinkering\u002Fmi50_gpu_llm_2","2.tinkering\u002F2.mi50_gpu_llm_2",{"title":50,"path":51,"stem":52},"mi50显卡ubuntu运行大模型开坑(三)安装风扇并且控制转速","\u002Ftinkering\u002Fmi50_gpu_llm_3","2.tinkering\u002F3.mi50_gpu_llm_3",{"title":54,"icon":35,"path":55,"stem":56,"children":57,"page":35},"LLM","\u002Fllm","3.llm",[58,62,66,70,74,78,82],{"title":59,"path":60,"stem":61},"langchain入门-安装以及初次使用(deepseek api版本)","\u002Fllm\u002Flangchain1","3.llm\u002F01.langchain1",{"title":63,"path":64,"stem":65},"langchain入门-使用langchain调用本地部署的大模型(以llama.cpp以及ollama为例)","\u002Fllm\u002Flangchain2","3.llm\u002F02.langchain2",{"title":67,"path":68,"stem":69},"langchain入门-使用langchain编写一个简单的聊天机器人(DeepSeek API&命令行版本)","\u002Fllm\u002Flangchain3","3.llm\u002F03.langchain3",{"title":71,"path":72,"stem":73},"langchain入门-使用langchain构建一个拥有RAG能力的代码问答应用(DeepSeek API&本地bge-m3&命令行版本)","\u002Fllm\u002Flangchain4","3.llm\u002F04.langchain4",{"title":75,"path":76,"stem":77},"golang\u002Feino eino框架的基础使用 Message以及ChatModel入门","\u002Fllm\u002Feino1","3.llm\u002F05.eino1",{"title":79,"path":80,"stem":81},"golang\u002Feino eino框架的基础使用 在ChatModel中使用工具","\u002Fllm\u002Feino2","3.llm\u002F06.eino2",{"title":83,"path":84,"stem":85},"llm\u002Fagent agent-zero初步搭建与使用","\u002Fllm\u002Fagent_zero_start","3.llm\u002F07.agent_zero_start",{"title":87,"icon":35,"path":88,"stem":89,"children":90,"page":35},"Verilog","\u002Fverilog","4.verilog",[91,95,99,103,107,111,115,119,123,127],{"title":92,"path":93,"stem":94},"31条指令单周期cpu设计(Verilog)-(一)相关软件","\u002Fverilog\u002Fmips1","4.verilog\u002F01.mips1",{"title":96,"path":97,"stem":98},"31条指令单周期cpu设计(Verilog)-(二)总体设计","\u002Fverilog\u002Fmips2","4.verilog\u002F02.mips2",{"title":100,"path":101,"stem":102},"31条指令单周期cpu设计(Verilog)-(三)指令分析","\u002Fverilog\u002Fmips3","4.verilog\u002F03.mips3",{"title":104,"path":105,"stem":106},"31条指令单周期cpu设计(Verilog)-(四)数据输入输出关系表","\u002Fverilog\u002Fmips4","4.verilog\u002F04.mips4",{"title":108,"path":109,"stem":110},"31条指令单周期cpu设计(Verilog)-(五)整体数据通路图设计","\u002Fverilog\u002Fmips5","4.verilog\u002F05.mips5",{"title":112,"path":113,"stem":114},"31条指令单周期cpu设计(Verilog)-(六)指令操作时间表设计","\u002Fverilog\u002Fmips6","4.verilog\u002F06.mips6",{"title":116,"path":117,"stem":118},"31条指令单周期cpu设计(Verilog)-(七)整体代码结构","\u002Fverilog\u002Fmips7","4.verilog\u002F07.mips7",{"title":120,"path":121,"stem":122},"31条指令单周期cpu设计(Verilog)-(八)上代码→指令译码以及控制器","\u002Fverilog\u002Fmips8","4.verilog\u002F08.mips8",{"title":124,"path":125,"stem":126},"31条指令单周期cpu设计(Verilog)-(九)上代码→基础模块实现","\u002Fverilog\u002Fmips9","4.verilog\u002F09.mips9",{"title":128,"path":129,"stem":130},"31条指令单周期cpu设计(Verilog)-(十)上代码→顶层模块设计&总结","\u002Fverilog\u002Fmips10","4.verilog\u002F10.mips10",{"title":132,"icon":35,"path":133,"stem":134,"children":135,"page":35},"Rust","\u002Frust","5.rust",[136,140],{"title":137,"path":138,"stem":139},"egui(一)从编译运行template开始","\u002Frust\u002Fegui1","5.rust\u002F01.egui1",{"title":141,"path":142,"stem":143},"egui(二)看看template的main函数：日志输出以及eframe run_native","\u002Frust\u002Fegui2","5.rust\u002F02.egui2",{"id":145,"title":108,"body":146,"description":405,"extension":406,"links":407,"meta":408,"navigation":410,"path":109,"seo":411,"stem":110,"__hash__":414},"docs\u002F4.verilog\u002F05.mips5.md",{"type":147,"value":148,"toc":397},"minimark",[149,153,172,175,187,190],[150,151,152],"h2",{"id":152},"说在前面",[154,155,156],"blockquote",{},[157,158,159,163,166,169],"ul",{},[160,161,162],"li",{},"开发环境：Vivado",[160,164,165],{},"语言：Verilog",[160,167,168],{},"cpu框架：Mips",[160,170,171],{},"控制器：组合逻辑",[150,173,174],{"id":174},"设计目的",[157,176,177],{},[160,178,179,180,186],{},"我们在用verilog实现这个cpu的时候，一般是先把各个部件单独写一个module，然后再串联起来，这张图就是帮助我们",[181,182,185],"span",{"className":183},[184],"text-success","连接各个部件","的（通过输入输出关系）。",[150,188,189],{"id":189},"设计流程",[157,191,192,205,382],{},[160,193,194,195,200,201],{},"把上一章中",[181,196,199],{"className":197},[198],"text-error","具体数据通路图"," 中所有的部件画出来（红色方框部分）\n",[202,203],"img",{"alt":199,"src":204},".\u002Fverilog\u002F38.webp",[160,206,207,208,212,213,217,220,221,366,368,369,371,372,371,374,371,376,378,379],{},"根据",[181,209,211],{"className":210},[198],"数据输入输出关系表","确定是否需要",[214,215,216],"strong",{},"多路选择器（MUX）、几路选择器",[218,219],"br",{},"例如，PC",[222,223,224,234],"table",{},[225,226,227],"thead",{},[228,229,230],"tr",{},[231,232,233],"th",{},"PC",[235,236,237,243,247,251,255,259,263,267,271,275,279,283,287,291,295,299,303,308,312,316,320,324,328,332,336,341,345,349,353,357,362],"tbody",{},[228,238,239],{},[240,241,242],"td",{},"NPC",[228,244,245],{},[240,246,242],{},[228,248,249],{},[240,250,242],{},[228,252,253],{},[240,254,242],{},[228,256,257],{},[240,258,242],{},[228,260,261],{},[240,262,242],{},[228,264,265],{},[240,266,242],{},[228,268,269],{},[240,270,242],{},[228,272,273],{},[240,274,242],{},[228,276,277],{},[240,278,242],{},[228,280,281],{},[240,282,242],{},[228,284,285],{},[240,286,242],{},[228,288,289],{},[240,290,242],{},[228,292,293],{},[240,294,242],{},[228,296,297],{},[240,298,242],{},[228,300,301],{},[240,302,242],{},[228,304,305],{},[240,306,307],{},"Rs",[228,309,310],{},[240,311,242],{},[228,313,314],{},[240,315,242],{},[228,317,318],{},[240,319,242],{},[228,321,322],{},[240,323,242],{},[228,325,326],{},[240,327,242],{},[228,329,330],{},[240,331,242],{},[228,333,334],{},[240,335,242],{},[228,337,338],{},[240,339,340],{},"ADD",[228,342,343],{},[240,344,340],{},[228,346,347],{},[240,348,242],{},[228,350,351],{},[240,352,242],{},[228,354,355],{},[240,356,242],{},[228,358,359],{},[240,360,361],{},"II",[228,363,364],{},[240,365,361],{},[218,367],{},"可以看到其输入有四种，分别是",[214,370,242],{},"、",[214,373,307],{},[214,375,340],{},[214,377,361],{},"，可以使用四路MUX或者多个2路MUX，这里采取的是后面一种 。（绿色方框部分）\n",[202,380],{"alt":233,"src":381},".\u002Fverilog\u002F39.webp",[160,383,384,385,389,393],{},"最后，根据",[181,386,388],{"className":387},[198],"将所有部件连接",[202,390],{"alt":391,"src":392},"total",".\u002Fverilog\u002F5.webp",[394,395,396],"del",{},"emmmmm，工作量大，但是设计思路应该不是很难",{"title":398,"searchDepth":399,"depth":400,"links":401},"",1,2,[402,403,404],{"id":152,"depth":400,"text":152},{"id":174,"depth":400,"text":174},{"id":189,"depth":400,"text":189},"详解31条MIPS单周期CPU的整体数据通路图设计，包括PC、NPC、ALU、寄存器堆、MUX等部件的连接方式，以及Verilog模块化实现思路。","md",null,{"date":409},"2019-03-21 16:54:15",true,{"title":412,"description":413},"【verilog\u002Fmips】31条指令单周期cpu设计(Verilog)-(五)整体数据通路图设计","详细介绍31条MIPS单周期CPU的整体数据通路图设计方法，包括PC、NPC、ALU、寄存器堆、多路选择器MUX等部件的连接关系，以及Verilog模块化代码实现思路。","d-2aSICEcIWuZH2AJcWxp05IFWB7tewsn4Gu9LdWWyY",[416,418],{"title":104,"path":105,"stem":106,"description":417,"children":-1},"详解31条MIPS指令数据通路设计中各部件的输入输出关系表，包含PC、NPC、ALU、寄存器堆等部件的详细连接关系，用于Verilog代码结构设计。",{"title":112,"path":113,"stem":114,"description":419,"children":-1},"详解31条MIPS单周期CPU的指令操作时间表设计，包括控制器真值表设计方法、各控制信号的作用说明，以及基于数据通路图的控制器实现步骤。",1776616492384]