generated from TinyTapeout/tt05-submission-template
-
Notifications
You must be signed in to change notification settings - Fork 0
/
info.yaml
76 lines (68 loc) · 3.67 KB
/
info.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
---
# Tiny Tapeout project information
project:
wokwi_id: 0 # If using wokwi, set this to your project's ID
# If using an HDL, set wokwi_id as 0 and uncomment and list your source files here.
# Source files must be in ./src and you must list each source file separately
source_files:
- minipit.v
- tt_um_minipit_stevej.v
top_module: "tt_um_minipit_stevej" # Put the name of your top module here, must start with "tt_um_". Make it unique by including your github username
# How many tiles your design occupies? A single tile is about 167x108 uM.
tiles: "1x1" # Valid values: 1x1, 1x2, 2x2, 3x2, 4x2 or 8x2
# Keep a track of the submission yaml
yaml_version: 4
# As everyone will have access to all designs, try to make it easy for someone new to your design to know what
# it does and how to operate it. This info will be automatically collected and used to make a datasheet for the chip.
#
# Here is a great example: https://github.com/davidsiaw/tt02-davidsiaw-stackcalc/blob/38c5647f83aad2aec675d566aa3d67b98f0aac81/info.yaml
documentation:
author: "Steve Jenson" # Your name
title: "Miniature Programmable Interrupt Timer" # Project title
language: "Verilog" # other examples include Verilog, Amaranth, VHDL, etc
description: "When the given 16-bit counter reaches 0 an interrupt pin is asserted for one clock cycle." # Short description of what your project does
# Longer description of how the project works. You can use standard markdown format.
how_it_works: |
A minimal clone of a programmable interrupt timer. Inspried by the Intel 8253 but without most of the features or headaches. See the `README.md` for detailed documentation.
# Instructions on how someone could test your project, include things like what buttons do what and how to set the clock if needed
how_to_test: |
set input pins to 0x00. pull write enable high, address line 0 low, address line 0 low.
set input pins to 0x10, pull write enable high, address line 0 low, address line 1 high.
pull bidi pin 3 (timer_start) high, count 10 clock cycles and see if the interrupt pin has pulled high for 1 cycle
# A description of what the inputs do (e.g. red button, SPI CLK, SPI MOSI, etc).
inputs:
- config[0] - use a clock divider
- config[1] - repeat the interrupt?
- config[2]
- config[3]
- config[4]
- config[5]
- config[6]
- config[7]
# A description of what the outputs do (e.g. status LED, SPI MISO, etc)
outputs:
- divider on?
- counter set?
- pit active?
- pit in reset?
- pit currently interrupting?
- f
- g
- h
# A description of what the bidirectional I/O pins do (e.g. I2C SDA, I2C SCL, etc)
bidirectional:
- /we write enable for config
- set config address 0
- set config address 1
- start the timer
- none
- none
- none
- none
# The following fields are optional
tag: "pit" # comma separated list of tags: test, encryption, experiment, clock, animation, utility, industrial, pwm, fpga, alu, microprocessor, risc, riscv, sensor, signal generator, fft, filter, music, bcd, sound, serial, timer, random number generator, calculator, decoder, counter, puzzle, multiplier, game, oscillator,
external_hw: "" # Describe any external hardware needed
discord: "shorts_weather" # Your discord handle, used for communication and automatically assigning tapeout role after a submission
doc_link: "" # URL to longer form documentation, eg the README.md in your repository
clock_hz: 0 # Clock frequency in Hz (if required)
picture: "" # relative path to a picture in your repository (must be 512kb or less)