如何用verilog来实现倒序输出?(verilog实现反转输出) |
您所在的位置:网站首页 › verilog实现findpeak › 如何用verilog来实现倒序输出?(verilog实现反转输出) |
输入一个16位的信号in,如何将其从低位到高位输出(即反转顺序输出)为out?
目录 输入一个16位的信号in,如何将其从低位到高位输出(即反转顺序输出)为out? 一、野蛮方法 二、always过程语句中for循环 三、generate例化for循环 一、野蛮方法{}位拼接运算符用于将两个或多个信号拼接起来,表示一个整体的信号,如下: a = {b[5],b[4:0]} 意思为 b的最高位b[5]和b的低五位拼接起来,组成的a为6位,相当于: a = {b[5],b[4],b[3],b[2],b[1],b[0]} `timescale 1ns/1ns module top_module( input [15:0] in, output [15:0] out ); assign out = {in[0],in[1],in[2],in[3],in[4],in[5],in[6],in[7],in[8],in[9],in[10],in[11],in[12],in[13],in[14],in[15]}; endmodule 二、always过程语句中for循环always 内部用for循环,需要定义interger类型变量,否则有些仿真工具会报错。 `timescale 1ns/1ns module top_module( input [15:0] in, output [15:0] out ); reg [15:0] out1; integer i; always @(in) begin for(i=0;i |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |