Commit Graph

76 Commits

Author SHA1 Message Date
Markus Koch 651b6bb11e bench: Test ARP requests in HWITL 2022-10-28 18:55:04 +02:00
Markus Koch 4804674d8e arp: Implement ARP requests
This is still missing timeout in case of no reply.
This needs to be added!
2022-10-28 18:52:17 +02:00
Markus Koch 1a41120afa bench: Clarify HWITL interface creation for local testing 2022-10-27 17:02:53 +02:00
Markus Koch 5f7704cf63 pkg: Implement to_string functions for MAC and IP addresses 2022-05-15 14:51:52 +02:00
Markus Koch 5f389b0c7b arp: Implement ARP replies 2022-05-15 14:51:49 +02:00
Markus Koch 7bb82a9acf doc: Add trashernet_eth to documentation 2022-05-15 14:40:45 +02:00
Markus Koch 3c1c14f953 bench: hw_itl: Add debug prints for RX/TX 2022-05-15 14:37:21 +02:00
Markus Koch 50b65bccec eth: tx: Remove accidental latch 2022-05-15 14:30:45 +02:00
Markus Koch 461c7ebce1 eth: tx: Fix polarity of tx_active checks 2022-05-15 14:27:26 +02:00
Markus Koch eab8783c6b bench: Disable wave logging by default 2022-05-13 21:03:12 +02:00
Markus Koch 8f4e996d57 bench: Clean up HWITL bench 2022-05-13 20:42:18 +02:00
Markus Koch e420b08eb2 bench: Add preliminary HWITL test for eth core 2022-05-13 20:39:05 +02:00
Markus Koch 7aa1b56bf9 eth: Add Ethernet type MUX 2022-05-13 20:37:28 +02:00
Markus Koch 8f3420bd54 pkg: Add configuration_t to trashernet 2022-05-13 20:36:52 +02:00
Markus Koch 4b4e5fdbfa bench: hw_itl: Calculate and append FCS for incoming frames 2022-05-13 18:20:13 +02:00
Markus Koch 0e80900426 bench: hw_itl: Add comments 2022-05-13 18:19:35 +02:00
Markus Koch fd721ae24f bench: Move HWITL tests to own top level / test bench file 2022-04-30 12:53:35 +02:00
Markus Koch 82d4e6808b bench: hwitl: Fix design to HW comms
Forgot to remove the sync header.
2022-04-30 12:48:39 +02:00
Markus Koch 1c281bc0f7 bench: Add hardware-in-the-loop test 2022-04-29 20:53:20 +02:00
Markus Koch c4f4cfe68e bench: Allow for different bench top levels in Makefile 2022-04-29 20:52:31 +02:00
Markus Koch f224aee487 doc: Add licensing info about the components of the logo 2022-04-24 12:26:19 +02:00
Markus Koch f45ded2ca9 bench: Add cocotb-based test bench for MAC test 2022-04-18 17:06:53 +02:00
Markus Koch 7d86f6a262 env: Add Sigasi project files 2022-04-18 10:17:42 +02:00
Markus Koch 313711dbc0 doc: Add KiCad schematic 2022-04-18 10:04:24 +02:00
Markus Koch 0f7437e901 demo: Fix missing record in mac demo
Will eventually become part of trashernet, I guess. But for now,
let's add it to the top level.
2022-04-18 09:44:27 +02:00
Markus Koch 5c27b685dc demo: Move top level to library work
With Diamond, the design top level *must* be in the "work" library,
otherwise your project will be haunted with weird compile errors
that sometimes simply cause the build to fail with an arbitrary
error message, but can sometimes even lead to a straight-up broken
bitstream.

Real bad stuff, so let's move the stuff from our "design" library
to "work". That fixes it.
2022-02-12 13:19:14 +01:00
Markus Koch 6beb9c8346 demo: Remove wait state
Not needed since a9039a175c.
2022-01-30 19:40:55 +01:00
Markus Koch 5b54a596c1 doc: Add circuit diagram 2022-01-30 19:29:09 +01:00
Markus Koch 61812c133f phy: Improve header synchronization 2022-01-30 19:26:43 +01:00
Markus Koch 075f935e12 phy: Fix NLPs
We need a different NLP timeout for RX than TX.
Also use a prescaler to improve timing.
2022-01-29 20:15:02 +01:00
Markus Koch a9039a175c phy+mac: Improve interface
Instead of having the user wait until the en-low was latched by
the core, let's just latch it internally.
2022-01-23 16:52:05 +01:00
Markus Koch 4a39c3d638 phy: Notify that the end-of-packet has been accepted 2022-01-23 16:31:20 +01:00
Markus Koch d1150fb7db demo: Add MAC demo design 2022-01-23 16:29:31 +01:00
Markus Koch d1e0143c9d phy: Fix TX manchester encoding
Ethernet uses "inverted" manchester as per IEEE 802.3.
2022-01-23 16:02:31 +01:00
Markus Koch 1bcddf4273 phy: Improve NLP timeout accuracy 2022-01-23 16:01:33 +01:00
Markus Koch afb545cd02 Clean up code formatting 2022-01-22 20:50:18 +01:00
Markus Koch 4e39e3b371 phy: Do not report tx_active when providing NLPs 2022-01-22 20:48:49 +01:00
Markus Koch a2edc540b2 phy: Fix NLP timebase error 2022-01-22 20:48:23 +01:00
Markus Koch 6f8bb7ba54 phy: Fix rounding error for NLP timeout 2022-01-22 20:47:47 +01:00
Markus Koch 76eaff20fd mac+phy: Initialize all required variables 2022-01-22 20:47:09 +01:00
Markus Koch 37714d5c2d bench: Use VUnit
Well, not really. This just makes it compile and work with VUNIT,
but it's not a real VUnit test bench. Will do that at some other
point.
2022-01-16 17:46:01 +01:00
Markus Koch ef6b6378f8 mac: tx: Implement automatic padding
This also renames the bit_cnt signal to sr_cnt.
97d0905c08 was kinda BS.

This fixes #4.
2022-01-16 14:44:43 +01:00
Markus Koch 22b7d99b1f mac: Add tx_active output 2022-01-16 13:44:33 +01:00
Markus Koch 97d0905c08 mac: Refactor incorrect signal name 2022-01-16 13:43:55 +01:00
Markus Koch 18b4213ed0 doc: Add Trashernet logo 2021-09-25 20:28:43 +02:00
Markus Koch 10da238c60 mac: Refactor to use records for the application interface 2021-09-25 16:18:02 +02:00
Markus Koch cfac94136a phy: Refactor to use records for the application interface 2021-09-25 12:28:04 +02:00
Markus Koch cf6fb61195 mac: Use records for header fields 2021-09-25 12:19:54 +02:00
Markus Koch 9addd97b57 Rename types package to general trashernet package 2021-09-25 11:07:12 +02:00
Markus Koch 1bff61d24a Fix code formatting 2021-09-04 19:33:44 +02:00