generated from TinyTapeout/tt05-submission-template
-
Notifications
You must be signed in to change notification settings - Fork 0
/
info.yaml
73 lines (65 loc) · 3.9 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
---
# 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:
- tt_um_cejmu.v
top_module: "tt_um_cejmu" # 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: "CE JMU Wuerzburg" # Your name
title: "4-Bit ALU" # Project title
language: "VHDL" # other examples include Verilog, Amaranth, VHDL, etc
description: "A simple 4-Bit ALU which contains two types of adders, multipliers, a comparator and a barrel-shifter" # Short description of what your project does
# Longer description of how the project works. You can use standard markdown format.
how_it_works: |
The ALU contains a ripple carry adder, a carry lookahead adder, a matrix multiplier, a wallace-tree multiplier, a comparator and a barrel-shifter. Everything is implemented fully combinational. A 3-bit opcode is used to select the respective component.
# 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: |
No clock is required. The first 4 input bits a[3...0] form the first operand, the last 4 input bits b[3...0] form the second operand. The outputs s[7...0] are used for the compuational results, the results for shifting a, or the results of comparing a with b. The bidirectional input bits 0, 1 and 2 are used as opcode to select the component, c.f. Figure above. If the barrel-shifter is used, a[3...0] will be shifted, b[1...0] is used to specify the shift width, whereas b[2] selects the shift direction.
# A description of what the inputs do (e.g. red button, SPI CLK, SPI MOSI, etc).
inputs:
- a[0]
- a[1]
- a[2]
- a[3]
- b[0]
- b[1]
- b[2] (0 = shift right, 1 = shift left)
- b[3]
# A description of what the outputs do (e.g. status LED, SPI MISO, etc)
outputs:
- s[0] (1, if $a > b$)
- s[1] (1, if $a < b$)
- s[2] (1, if $a == b$)
- s[3]
- s[4]
- s[5]
- s[6]
- s[7]
# A description of what the bidirectional I/O pins do (e.g. I2C SDA, I2C SCL, etc)
bidirectional:
- opcode[0]
- opcode[1]
- opcode[2]
- none
- none
- none
- none
- none
# The following fields are optional
tag: "alu, combinational, 4-bit, adder, multiplier, comperator, barrel shifter" # 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: "myzinsky" # 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: "resources/4-Bit-ALU.png" # relative path to a picture in your repository (must be 512kb or less)