自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(3)
  • 收藏
  • 关注

原创 SM4加解密算法的电路设计

本文参考了SM4的相关标准文档,在数字电路上实现了SM4加解密算法,并用Verilog编写了简单的testbench,然后使用QuestaSim对设计的电路进行了仿真,验证了电路功能的正确性。考虑到32个轮密钥是依次生成的,且加密明文时每一轮轮操作需要的轮密钥都是当前的轮密钥,所以同时设计了两个轮函数分别处理轮密钥的生成和明文的加密,即每生成一个轮密钥就将该轮密钥输出给明文加密部分进行加密,从而将先生成32个轮密钥然后再进行加密的64个时钟周期消耗减少到了32个时钟周期,大大减少了运算时间。

2024-02-11 20:49:13 2940 7

原创 三种常见平方根算法的电路设计及Verilog实现与仿真

本文实现的算法是二分法、牛顿迭代法、逐次逼近法,设计好电路后用Verilog描述并用Modelsim或者Verilator进行仿真得到波形结果。在使用Verilog描述电路前必须做到心中有电路,这是采用HDL设计数字电路的前提。数字电路根据功能大体上可以分为数据通路和控制通路,至于先设计哪一部分取决于总体电路的功能是偏向数据处理运算还是偏向控制。根据简介和说明将对以上三种算法进行电路设计并用Verilog描述。

2023-04-29 09:10:17 10372 3

原创 使用Verilator仿真基于Verilog编写的testbench并用GTKWave查看波形

Verilator是一个开源的Verilog、SystemVerilog仿真EDA。它进行仿真的第一步称为“verilate”,将编写好的.v/.sv文件转化成为C++编写的类和方法。第二步则是建立C++运行环境wrapper file,在里面编写的main函数用于例化第一步里生成的和Verilator自带的仿真不可缺少的类,之后运行Verilator得到make文件.mk。第三步则是用make命令调用外部编译器(gcc等)编译生成的.mk文件,得到可执行文件。

2023-04-20 08:00:00 4472 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除