给上述代码输入输出加上使能 且全部改为单比特数据串行输入输出
时间: 2024-05-09 14:20:48 浏览: 12
以下是修改后的代码:
```verilog
module ParallelToSerial(
input clk,
input en,
input [7:0] data_in,
input rst,
output reg out,
output reg done
);
reg [7:0] shift_reg;
reg [2:0] count;
always @(posedge clk) begin
if (rst) begin
shift_reg <= 8'b0;
count <= 3'b0;
out <= 1'b0;
done <= 1'b0;
end else if (en) begin
shift_reg <= {shift_reg[6:0], data_in[7]};
count <= count + 1;
if (count == 3) begin
out <= shift_reg[0];
count <= 0;
if (shift_reg == 8'b0) begin
done <= 1'b1;
end
end
end
end
endmodule
```
输入为 8 位数据,每次只输入一个比特,通过 en 使能信号控制输入。输出为单比特数据,需要通过 done 信号判断输出是否完成。
相关推荐
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)