1 Tiny Tapeout Factory Test

1 : Tiny Tapeout Factory Test

Design render

How it works

The factory test module is a simple module that can be used to test all the I/O pins of the ASIC.

It has three modes of operation:

  1. Mirroring the input pins to the output pins (when rst_n is low).
  2. Mirroring the bidirectional pins to the output pins (when rst_n is high sel is low).
  3. Outputing a counter on the output pins and the bidirectional pins (when rst_n is high and sel is high).

The following table summarizes the modes:

rst_n sel Mode uo_out value uio pins
0 X Input mirror ui_in High-Z
1 0 Bidirectional mirror uio_in High-Z
1 1 Counter counter counter

The counter is an 8-bit counter that increments on every clock cycle, and resets when rst_n is low.

How to test

  1. Set rst_n low and observe that the input pins (ui_in) are output on the output pins (uo_out).
  2. Set rst_n high and sel low and observe that the bidirectional pins (uio_in) are output on the output pins (uo_out).
  3. Set sel high and observe that the counter is output on both the output pins (uo_out) and the bidirectional pins (uio).

IO

#InputOutputBidirectional
0sel / in_a[0]output[0] / counter[0]in_b[0] / counter[0]
1in_a[1]output[1] / counter[1]in_b[1] / counter[1]
2in_a[2]output[2] / counter[2]in_b[2] / counter[2]
3in_a[3]output[3] / counter[3]in_b[3] / counter[3]
4in_a[4]output[4] / counter[4]in_b[4] / counter[4]
5in_a[5]output[5] / counter[5]in_b[5] / counter[5]
6in_a[6]output[6] / counter[6]in_b[6] / counter[6]
7in_a[7]output[7] / counter[7]in_b[7] / counter[7]

Chip location

Controller Mux Mux Mux Mux Mux Analog Mux Analog Mux Mux Mux Mux Analog Mux Mux Mux Analog Mux Mux Mux Mux tt_um_chip_rom (Chip ROM) tt_um_factory_test (Tiny Tapeout Factory Test) tt_um_tnt_gf_555 (tnt's recreation of a 555 on GF180mcu) tt_um_mcml_vco (MCML VCO) tt_um_tnt_gf_vco (Quadrature VCO) tt_um_oscillating_bones (Oscillating Bones) tt_um_MichaelBell_tinyQV (TinyQV Risc-V SoC) tt_um_essen (256x8 SRAM) tt_um_analog_factory_test (TT GF180mcuD Analog Factory Test) tt_um_cw_testbuffer (TT GF180mcuD Testbuffer) tt_um_fabulous_gf_0p3 (Tiny FABulous FPGA) tt_um_fabulous_gf_0p3_3v3 (Tiny FABulous FPGA (3.3V version)) tt_um_htfab_momcap (MoM capacitor) tt_um_gf_r2r_dac (GF R2R DAC) tt_um_AbAdA_2048 (Abad2048) tt_um_mattvenn_signal_generator (Simple Signal Generator) tt_um_74hct00 (74HCT00 Quad 2-Input NAND (3.3 V)) tt_um_algofoogle_gf_analog (algofoogle analog stuff) tt_um_LPCAS_TTGF0P3_TP1 (3.3V Folded Cascode OTA ) tt_um_kianV_rv32ima_uLinux_SoC (KianV uLinux SoC) tt_um_kiterai_current_dac (Analog 4 bit Current DAC) tt_um_urish_simon (Simon Says memory game) tt_um_waferspace_vga_screensaver (Wafer.space Logo VGA Screensaver) tt_um_urish_usb_cdc (USB CDC (Serial) Device) tt_um_a1k0n_nyancat (VGA Nyan Cat) tt_um_rahulbhagwat_gf180_bandgap_reference (GF BGR) tt_um_odgrip_polywave (PolyWave) tt_um_2048_vga_game (2048 sliding tile puzzle game (VGA)) tt_um_combined (Philippine flag waving) tt_um_gojimmypi_ttgfa_UART_FSM_TRNG_Lab (Hardware Entropy Explorer: UART/SPI TRNG and PUF) tt_um_gojimmypi_ttgfa_UART_FSM_TRNG_Lab_analog (Hardware Entropy Explorer: UART/SPI TRNG and PUF (Analog)) tt_um_coldbrew (Until heat death do us part) Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available Available