Module: vout_7seg


Ports:

DirectionSizeName
inputclk
outputdisplayA
outputdisplayB
outputdisplayC
outputdisplayD
outputdisplayE
outputdisplayF
outputdisplayG
outputen1
outputen2
outputen3
outputen4
input[31:0]value

Parameter:

ParameterDefault
[ZOOM]
G bin2bcd bin2bcd PORTS bcd[19:0] bin[15:0] vout_7seg.v pins PINS output PIN_3 input PIN_87 output PIN_86 input PIN_88 input PIN_91 input PIN_90 input PIN_89 input PIN_132 input PIN_99 input PIN_98 output PIN_129 input PIN_128 output PIN_127 output PIN_85 output PIN_137 output PIN_135 output PIN_136 output PIN_133 output PIN_143 output PIN_144 output PIN_1 output PIN_141 output PIN_142 output PIN_138 output PIN_2 input PIN_24 rio rio PORTS BLINK_LED INTERFACE_UART_RX INTERFACE_UART_TX SW_S1 SW_S2 SW_S3 SW_S4 VIN5_IR VIN6_CLK VIN6_DATA VIN7_CS VIN7_MISO VIN7_SCLK VOUT4_FREQUENCY VOUT8_7SEG_EN1 VOUT8_7SEG_EN2 VOUT8_7SEG_EN3 VOUT8_7SEG_EN4 VOUT8_7SEG_SEG_A VOUT8_7SEG_SEG_B VOUT8_7SEG_SEG_C VOUT8_7SEG_SEG_D VOUT8_7SEG_SEG_E VOUT8_7SEG_SEG_F VOUT8_7SEG_SEG_G sysclk blink1     uart1     vin_ir5     vin_ps26     vin_tlc549c7     vout_7seg8 sysclk VOUT8_7SEG_SEG_A VOUT8_7SEG_SEG_B VOUT8_7SEG_SEG_C VOUT8_7SEG_SEG_D VOUT8_7SEG_SEG_E VOUT8_7SEG_SEG_F VOUT8_7SEG_SEG_G VOUT8_7SEG_EN1 VOUT8_7SEG_EN2 VOUT8_7SEG_EN3 VOUT8_7SEG_EN4 SP8     vout_frequency4 rio.v pins:PIN_3->rio:BLINK_LED pins:PIN_87->rio:INTERFACE_UART_RX pins:PIN_86->rio:INTERFACE_UART_TX pins:PIN_88->rio:SW_S1 pins:PIN_91->rio:SW_S2 pins:PIN_90->rio:SW_S3 pins:PIN_89->rio:SW_S4 pins:PIN_132->rio:VIN5_IR pins:PIN_99->rio:VIN6_CLK pins:PIN_98->rio:VIN6_DATA pins:PIN_129->rio:VIN7_CS pins:PIN_128->rio:VIN7_MISO pins:PIN_127->rio:VIN7_SCLK pins:PIN_85->rio:VOUT4_FREQUENCY pins:PIN_137->rio:VOUT8_7SEG_EN1 pins:PIN_135->rio:VOUT8_7SEG_EN2 pins:PIN_136->rio:VOUT8_7SEG_EN3 pins:PIN_133->rio:VOUT8_7SEG_EN4 pins:PIN_143->rio:VOUT8_7SEG_SEG_A pins:PIN_144->rio:VOUT8_7SEG_SEG_B pins:PIN_1->rio:VOUT8_7SEG_SEG_C pins:PIN_141->rio:VOUT8_7SEG_SEG_D pins:PIN_142->rio:VOUT8_7SEG_SEG_E pins:PIN_138->rio:VOUT8_7SEG_SEG_F pins:PIN_2->rio:VOUT8_7SEG_SEG_G pins:PIN_24->rio:sysclk vout7seg vout_7seg PORTS clk displayA displayB displayC displayD displayE displayF displayG en1 en2 en3 en4 value[31:0] bin2bcd1 bcd value[15:0]     ss1 digit clk display vout_7seg.v rio:vout_7seg8_clk->vout7seg:clk rio:vout_7seg8_displayA->vout7seg:displayA rio:vout_7seg8_displayB->vout7seg:displayB rio:vout_7seg8_displayC->vout7seg:displayC rio:vout_7seg8_displayD->vout7seg:displayD rio:vout_7seg8_displayE->vout7seg:displayE rio:vout_7seg8_displayF->vout7seg:displayF rio:vout_7seg8_displayG->vout7seg:displayG rio:vout_7seg8_en1->vout7seg:en1 rio:vout_7seg8_en2->vout7seg:en2 rio:vout_7seg8_en3->vout7seg:en3 rio:vout_7seg8_en4->vout7seg:en4 rio:vout_7seg8_value->vout7seg:value vout7seg:bin2bcd1_bcd->bin2bcd:bcd vout7seg:bin2bcd1_bin->bin2bcd:bin sevensegments seven_segments PORTS binary[3:0] clk display[6:0] vout_7seg.v vout7seg:ss1_binary->sevensegments:binary vout7seg:ss1_clk->sevensegments:clk vout7seg:ss1_display->sevensegments:display
G bin2bcd bin2bcd PORTS bcd[19:0] bin[15:0] vout_7seg.v pins PINS output PIN_3 input PIN_87 output PIN_86 input PIN_88 input PIN_91 input PIN_90 input PIN_89 input PIN_132 input PIN_99 input PIN_98 output PIN_129 input PIN_128 output PIN_127 output PIN_85 output PIN_137 output PIN_135 output PIN_136 output PIN_133 output PIN_143 output PIN_144 output PIN_1 output PIN_141 output PIN_142 output PIN_138 output PIN_2 input PIN_24 rio rio PORTS BLINK_LED INTERFACE_UART_RX INTERFACE_UART_TX SW_S1 SW_S2 SW_S3 SW_S4 VIN5_IR VIN6_CLK VIN6_DATA VIN7_CS VIN7_MISO VIN7_SCLK VOUT4_FREQUENCY VOUT8_7SEG_EN1 VOUT8_7SEG_EN2 VOUT8_7SEG_EN3 VOUT8_7SEG_EN4 VOUT8_7SEG_SEG_A VOUT8_7SEG_SEG_B VOUT8_7SEG_SEG_C VOUT8_7SEG_SEG_D VOUT8_7SEG_SEG_E VOUT8_7SEG_SEG_F VOUT8_7SEG_SEG_G sysclk blink1     uart1     vin_ir5     vin_ps26     vin_tlc549c7     vout_7seg8 sysclk VOUT8_7SEG_SEG_A VOUT8_7SEG_SEG_B VOUT8_7SEG_SEG_C VOUT8_7SEG_SEG_D VOUT8_7SEG_SEG_E VOUT8_7SEG_SEG_F VOUT8_7SEG_SEG_G VOUT8_7SEG_EN1 VOUT8_7SEG_EN2 VOUT8_7SEG_EN3 VOUT8_7SEG_EN4 SP8     vout_frequency4 rio.v pins:PIN_3->rio:BLINK_LED pins:PIN_87->rio:INTERFACE_UART_RX pins:PIN_86->rio:INTERFACE_UART_TX pins:PIN_88->rio:SW_S1 pins:PIN_91->rio:SW_S2 pins:PIN_90->rio:SW_S3 pins:PIN_89->rio:SW_S4 pins:PIN_132->rio:VIN5_IR pins:PIN_99->rio:VIN6_CLK pins:PIN_98->rio:VIN6_DATA pins:PIN_129->rio:VIN7_CS pins:PIN_128->rio:VIN7_MISO pins:PIN_127->rio:VIN7_SCLK pins:PIN_85->rio:VOUT4_FREQUENCY pins:PIN_137->rio:VOUT8_7SEG_EN1 pins:PIN_135->rio:VOUT8_7SEG_EN2 pins:PIN_136->rio:VOUT8_7SEG_EN3 pins:PIN_133->rio:VOUT8_7SEG_EN4 pins:PIN_143->rio:VOUT8_7SEG_SEG_A pins:PIN_144->rio:VOUT8_7SEG_SEG_B pins:PIN_1->rio:VOUT8_7SEG_SEG_C pins:PIN_141->rio:VOUT8_7SEG_SEG_D pins:PIN_142->rio:VOUT8_7SEG_SEG_E pins:PIN_138->rio:VOUT8_7SEG_SEG_F pins:PIN_2->rio:VOUT8_7SEG_SEG_G pins:PIN_24->rio:sysclk vout7seg vout_7seg PORTS clk displayA displayB displayC displayD displayE displayF displayG en1 en2 en3 en4 value[31:0] bin2bcd1 bcd value[15:0]     ss1 digit clk display vout_7seg.v rio:vout_7seg8_clk->vout7seg:clk rio:vout_7seg8_displayA->vout7seg:displayA rio:vout_7seg8_displayB->vout7seg:displayB rio:vout_7seg8_displayC->vout7seg:displayC rio:vout_7seg8_displayD->vout7seg:displayD rio:vout_7seg8_displayE->vout7seg:displayE rio:vout_7seg8_displayF->vout7seg:displayF rio:vout_7seg8_displayG->vout7seg:displayG rio:vout_7seg8_en1->vout7seg:en1 rio:vout_7seg8_en2->vout7seg:en2 rio:vout_7seg8_en3->vout7seg:en3 rio:vout_7seg8_en4->vout7seg:en4 rio:vout_7seg8_value->vout7seg:value vout7seg:bin2bcd1_bcd->bin2bcd:bcd vout7seg:bin2bcd1_bin->bin2bcd:bin sevensegments seven_segments PORTS binary[3:0] clk display[6:0] vout_7seg.v vout7seg:ss1_binary->sevensegments:binary vout7seg:ss1_clk->sevensegments:clk vout7seg:ss1_display->sevensegments:display

Child-Modules

bin2bcd1: bin2bcd
ss1: seven_segments


Source

Filename: vout_7seg.v
2 module vout_7seg (
3         input clk,
4         input signed [31:0] value,
5         output reg en1,
6         output reg en2,
7         output reg en3,
8         output reg en4,
9         output wire displayA,
10         output wire displayB,
11         output wire displayC,
12         output wire displayD,
13         output wire displayE,
14         output wire displayF,
15         output wire displayG
16     );
17 
18 
19     wire [6:0] display;
20     assign displayA = display[0];
21     assign displayB = display[1];
22     assign displayC = display[2];
23     assign displayD = display[3];
24     assign displayE = display[4];
25     assign displayF = display[5];
26     assign displayG = display[6];
27 
28     wire [19:0] bcd;
29 
30     bin2bcd bin2bcd1 (
31         .bin (value[15:0]),
32         .bcd (bcd)
33     );
34     wire [7:0] int1;
35     wire [7:0] int10;
36     wire [7:0] int100;
37     wire [7:0] int1000;
38     wire [7:0] int10000;
39     assign int1 = 8'd48 + {4'd0, bcd[3:0]};
40     assign int10 = 8'd48 + {4'd0, bcd[7:4]};
41     assign int100 = 8'd48 + {4'd0, bcd[11:8]};
42     assign int1000 = 8'd48 + {4'd0, bcd[15:12]};
43     assign int10000 = 8'd48 + {4'd0, bcd[19:16]};
44 
45     reg [3:0] digit;
46 
47     reg [7:0] digit_delay = 0;
48     reg [1:0] digit_n = 0;
49     always @(posedge clk) begin
50     
51         digit_delay <= digit_delay + 1;
52 
53         if (digit_delay == 0) begin
54             digit_n <= digit_n + 1;
55         end
56  
57 		case (digit_n)
58 			2'h0: begin
59                 digit <= int1;
60                 en1 <= 0;
61                 en2 <= 1;
62                 en3 <= 1;
63                 en4 <= 1;
64             end
65 			2'h1: begin
66                 digit <= int10;
67                 en1 <= 1;
68                 en2 <= 0;
69                 en3 <= 1;
70                 en4 <= 1;
71             end
72 			2'h2: begin
73                 digit <= int100;
74                 en1 <= 1;
75                 en2 <= 1;
76                 en3 <= 0;
77                 en4 <= 1;
78             end
79 			2'h3: begin
80                 digit <= int1000;
81                 en1 <= 1;
82                 en2 <= 1;
83                 en3 <= 1;
84                 en4 <= 0;
85             end
86 		endcase
87 
88     end
89 
90 
91     seven_segments ss1 (
92         .clk(clk),
93         .binary(digit),
94         .display(display)
95     );
96 
97 endmodule