Uart Feature List - SoC
Uart Feature List - SoC
Uart Feature List - SoC
UVM testcase : Generate clock and after applying reset, driving the value
chromite_soc_uart_framing_error to tx_data register from VIP by configuring stop bit as 0
C testcase :
Generate clock and after applying reset, configure the
1.uart_baud_1 baud register with different divisor value and data in
2. uart_baud_5
tx_data register
3. uart_baud_65535
PROJECT TITLE : C32 SoC (UART)
Written values :
tx_data reg = ef, 57, 64, 27 baud
reg = 5
control reg = FF0080
status_clear = 11111
interrupt_en = 111111111111 Read Scoreboard checker
values : rx_data reg
= ef, 48, ab, 32 baud reg = 5
control reg =
FF0080 interrupt_en =
111111111111 status = 17
Read values :
Baud = 5, tx_data = 0, rx_data = 0,
From C testacse
control = 2880, status = 17, interrupt_en
= 0, status_clear = 0
- From C testcase
Written values :
tx_data reg = ef (In uart_config stop bit From C testcase
as 0)
Written values :
tx_data reg = ef, 48, ab, 32 (same value From C testcase
are reeated until FIFO becomes full )
Written values :
tx_data reg = 00 (In uart_config stop bit From C testcase
as 0)
Written values :
1.tx_data reg = ef, 57, 64, 27
control reg =
F10480(tx_thld_dir = 1) From C testcase
2. tx_data reg = ef, 57, 64, 27
control reg =
F21480 (tx_thld_dir = 0)
Written values :
1.control reg = 2F3C80(rx_thld_dir = 1)
From C testcase
2. control reg =
2F1C80(rx_thld_dir =0)
Written values :
1.control reg = FF0081(stop_bits=01)
From C testcase
2. control reg =
FF0082(stop_bits=10)
Written values :
control reg = FF0083(stop_bits=11) From C testcase
Written values :
1.control reg = FF0080(parity=00)
2. control reg = From C testcase
FF0084(parity=01) 3. control reg =
FF0088(parity=10)
Written values :
From C testcase
control reg = FF008C(parity=11)
Written values :
1.control reg = FF0050(charsize=00)
2. control reg = From C testcase
FF0060(charsize=01) 3. control reg =
FF0070(charsize=10)
Written values :
From C testcase
interrupt_en = 111111111111
Written values :
interrupt_en = 010000000000 From C testcase
Written values :
From C testcase
interrupt_en = 100000000000
Written values :
From C testcase
interrupt_en = 001000000000
Written values :
From C testcase
interrupt_en = 000000010000
Written values :
interrupt_en = 000000100000 From C testcase
Written values :
tx_data reg = random values
baud reg = 0, 65534
From C testcase
control reg = 000000,
FFFFFF interrupt_en =
111111111111,0
Written values :
baud reg = 0, 5, 65535(above 16 bit) From C testcase
tx_data reg = ef
PASSING CRITERIA COVER_POINT VERIFIED
Written values :
tx_data reg = ef, 57, 64, 27 baud
reg = 5 control
reg = FF0080 status_clear =
11111 interrupt_en =
111111111111 Read values :
rx_data reg = ef, 48, ab, 32
baud reg = 5
control reg = FF0080
interrupt_en = 111111111111
status = 17
Written values :
tx_data reg = random values
baud reg = 0, 65534
control reg = 000000,
FFFFFF interrupt_en =
111111111111,0