Реализация RS-232 в Verilog / HDL - PullRequest
0 голосов
/ 02 марта 2019

В настоящее время я занимаюсь разработкой части RS-232 / UART моего процессора и решил разработать ее на HDL, а не использовать netlist / GUI.Пока у меня есть следующее, но оно появляется с ошибкой: Синтаксическая ошибка в строках 9 и 16
Вот мой (очень короткий) код HDL:

module RS232_HDL(Data_In, Data_Out, DTR, DSR, RTS, CTS, Tx, Rx, Address);  
input Data_In, DTR, DSR, RTS, CTS, Rx;  
output Data_Out, Tx;  
input [7:0] Address;  
reg Tx_Reg, Rx_Reg;  

assign DSR = 0;  
if (DTR == 0 && Address == 8'b11111111)  
  begin  
    assign RTS = 1;  
    if (CTS == 1)  
      begin  
        assign Tx = Data_In;  
        assign DSR = 1;  
      end  
  end
endmodule  

Строка 9это: if (DTR == 0 && Address == 8'b11111111)
Строка 16: end
Я не знаю, как end может быть синтаксической ошибкой, но она появляется как единое целое.
Я думаю, что главная проблема между моей идеей и текущимРеализация заключается в том, что я просто хочу использовать функцию «битовый взрыв», но каждая реализация RS-232, с которой я столкнулся, использует целый байт в качестве ввода вместо отдельных битов.

...