【【萌新编写risc-v之软件的学习使用】】

萌新编写risc-v软件的学习使用

对于vscode我其实没什么好说的 就是先配置好环境

其实vscde作为一个编译器的软件 其实并不需要指望能往里面加载多少功能 我们需要做的就是赋予编辑器更好用的功能和体验

有些人会在vscode里面甚至加入波形 仿真 我觉得不如交给 vivado来用

在vscode里面需要完成的通过暂时的设计综合确认部分的正确

设计综合

比如我写了一个非常简单的代码

c 复制代码
module gates2(  
    input  a,
    input  b, 
    output[5:0] y );
     assign y[0] = a & b ; 
    assign y[1] =~( a & b );
     assign y[2] = a | b ; 
     assign y[3] = ~(a | b) ;
      assign y[4] = a ^ b ;
       assign y[5] = a ~^ b ;
        endmodule


其实看个大概就能看出对不对了

专业的事情交给专业的人

对于设计综合 写好部分 RTL代码之后 在 vivado上采取的就是先综合看看是否能将RTL级的代码推演生成至网表文件

我们现在讲述一个概念叫设计综合

综合的过程就是将行为级或RTL级的设计描述和原理图等设计输入转换成由与门,或门 非门 RAM和触发器等基本逻辑单元组成的逻辑连接的过程,并将RTL级推演的网表文件映射到FPGA器件的原语,生成综合的网表文件。

先在专用编辑器里面写一段垃圾代码

c 复制代码
module gates2(  
    input  a,
    input  b, 
    output[5:0] y
);
assign y[0] = a & b ;
assign y[1] =~( a & b );
assign y[2] = a | b ;
assign y[3] = ~(a | b) ;
assign y[4] = a ^ b ;
assign y[5] = a ~^ b ;
endmodule


综合一下

综合完成之后我们可以点击

RTL ANALYSIS

下属的Schematic 显示出完整的电路表示图像

生成的是RTL级的代码

简单代码下的RTL电路图 如图所示

这是在SYNTHESIS 下点击电路图出现的Schematic

感觉 是和上面的图案有些许同 这是电路图形式的综合

下面讲述testbench 的 使用和实现

有点抽象的是我忘记怎么用VScode完成例化操作 了

我们按照在输入框里的输入就行了

一键用Vscode例化 和 testbench 都行

相关推荐
学习日记hhh5 分钟前
STM32G431RBT6(蓝桥杯)串口(发送)
stm32·单片机·嵌入式硬件
老李的森林5 分钟前
嵌入式开发--STM32延时函数重构
stm32·单片机·嵌入式硬件·重构·延时
OH五星上将2 小时前
OpenHarmony(鸿蒙南向开发)——小型系统内核(LiteOS-A)【内核通信机制】上
linux·嵌入式硬件·harmonyos·openharmony·鸿蒙开发·liteos-a·鸿蒙内核
爱桥代码的程序媛2 小时前
鸿蒙OpenHarmony【轻量系统内核通信机制(互斥锁)】子系统开发
嵌入式硬件·harmonyos·鸿蒙·openharmony··鸿蒙开发·子系统开发
ImomoTo3 小时前
HarmonyOS学习(十三)——数据管理(二) 关系型数据库
数据库·学习·harmonyos·arkts·鸿蒙
wang_book5 小时前
Gitlab学习(007 gitlab项目操作)
java·运维·git·学习·spring·gitlab
weixin_455446176 小时前
Python学习的主要知识框架
开发语言·python·学习
Ylucius8 小时前
动态语言? 静态语言? ------区别何在?java,js,c,c++,python分给是静态or动态语言?
java·c语言·javascript·c++·python·学习
LvManBa9 小时前
Vue学习记录之六(组件实战及BEM框架了解)
vue.js·学习·rust