摘要:
Q1: 在编写testbench时,需要对输入不停的赋值。然而不停的#20 data_in = ... 明显不现实。故希望用一个for循环来实现不停输入。 A1: 在一个initial里面新建一个reg, 位数根据需要来去确定。注for循环中,verilog语法不支持自加。 阅读全文
摘要:
1. 配置IP核可以参考网上教程,有很多,这里不做赘述。注意的是本次使用的是单端口RAM, 在设置时,人为勾选了ena片选信号。 2. 关于配置RAM时的数据宽度和深度问题。 答: 数据宽度规定为8位, 数据深度本来定义18根地址总线[17:0],把深度在设置中定义为18。但在初始化端口中显示add 阅读全文
摘要:
描述: 计算两个大整数的乘积。 输入: 输入有两行,第一行单独一个大整数A,第二行单独一个大整数B。每个数的长度不超过1000。 输出: 单独一行输出A,B的精确乘积。结果请注意换行。 输入样例: 314159265358979323846264332718281828459045235360287 阅读全文
摘要:
描述: 输入一个小于10的正整数n,按把每个元素都交换到最前面一次的方法,输出前n个小写字母的所有排列。 输入: 输入一个小于10的正整数n。 输出: 按把每个元素都交换到最前面一次的方法,输出前n个小写字母的所有排列。 输入样例: 3 输出样例: abcacbbacbcacbacab 阅读全文
摘要:
1. 代码关键部分在于按位置穷举,设置一个数组str[10001]用于存放穷举的二进制数。 2.str[0]位置放0时穷举所有可能,放1时穷举所有可能;str[1]位置放0时穷举所有可能,放1时穷举所有可能;以此类推。 阅读全文
摘要:
Verilog状态机编写 一、状态机的编写分为3种 一段式:将状态转移、状态转移条件、输出全都放置在一个always模块中。 两段式:一个模块用时序逻辑描述状态转移,另一个模块利用组合逻辑描述状态转移条件及输出。 三段式:第一个模块利用时序逻辑编写状态转移(always、非阻塞原语)。 第二个模块利 阅读全文