Commit Graph

25 Commits

Author SHA1 Message Date
Peter McGoron df9a7dcd8d Precompile Micropython to bytecode: Document
This reduces load times a little bit, and also allows for documentation
inside the modules without bloating up memory.
2024-03-12 01:13:23 +00:00
Peter McGoron baaea5a2cc waveform: finish basic tests 2024-03-03 23:05:29 +00:00
Peter McGoron 1d85e2307d waveform: write and start simulation 2024-03-03 22:35:19 +00:00
Peter McGoron 75d7f298e2 Documentation and register location generation 2024-02-28 13:28:06 +00:00
Peter McGoron da1e9238ab unify region generation and added SPI to PicoRV32 2024-02-27 03:48:22 +00:00
Peter McGoron 88e3d15dd8 Get PicoRV32 to execute code
1. Update LiteX to 2023.12. This update adds wishbone bus addressing
   modes. Before this update, all wishbone buses used word addressing.
   For example, 0x0 mapped to word 0, 0x0 mapped to word 1, etc. This
   caused problems with the PicoRV32 and other modules, which are byte
   addressed.
2. Use adapter to convert between byte and word addressing. The SRAM is
   word addressed. The PicoRV32 shifts the address down by two bits to
   address the correct word. The PicoRV32 core seems to expect this.
3. Add debug register output. This is not working yet.
4. Use LiteX PicoRV32 wishbone adapter instead of PicoRV32 default. This
   seems to be simpler (combinatorial not synchronous).
5. Add some documentation.
6. Seperate config to new config file.
2024-02-25 18:58:34 +00:00
Peter McGoron f5b14d51ab picorv32 now runs: debugging outputs 2024-02-22 04:58:59 +00:00
Peter McGoron 06cf8807c3 Progress on PicoRV32
1) The PicoRV32 bus was not generated correctly. Running "finalize" on
   the bus, which is what the SoC does, does not generate the bus logic
   correctly. I don't know if  this is a bug or if the SoC bus generator is
   only meant to be used in the main SoC.

   Currently the bus logic is copied from the LiteX finalize code.

2) Add test micropython code to load code.

3) Removed BRAM. The Wishbone cache was messing with the direct
   implementation of the BRAM because the BRAM did not implement all the
   bus features correctly. LiteX has a Wishbone "SRAM" module, and despite
   it's name it can also generate BRAM if there are available BRAM. This is
   how the ROM and the startup RAM are implemented. The PicoRV32 ram
   is now using this SRAM.
2024-02-20 15:36:53 +00:00
Peter McGoron 4e3df09bb8 more cleanup and bug finding 2024-02-08 12:57:22 +00:00
Peter McGoron c3980f64da Correctly finalize picorv32 module
I think LiteX's SoCIORegions are reserved regions. Non-cached regions
are then placed inside these reserved regions. Each module also has
a "do_finalize" method that runs at code generation.
2024-02-04 14:47:39 +00:00
Adam Mooers 2863c9a2d2 Fixed bug where scp silently switches to sftp on new version of openssh 2023-08-20 00:47:04 -04:00
Adam Mooers b1fb245908 Cleaned up Makefile formatting and clarified tar comment 2023-08-17 11:53:18 -04:00
Adam Mooers e0c3bedcee Updated makefile to automatically select the right openFPGALoader 2023-08-16 15:49:44 -04:00
Adam Mooers 2a97f0a197 Fixed line which combined two git commands 2023-08-15 21:11:20 -04:00
Adam Mooers 5be3459332 Moved network from to 192.168.2 because 192.168.1 is very common 2023-08-08 23:59:34 -04:00
Peter McGoron cf95a0fd20 refactor compiles 2023-06-28 18:49:26 -04:00
Peter McGoron 130e1775ac refactor csr2mp and docker Makefile 2023-06-26 15:49:20 -04:00
Peter McGoron f30f6f1ad5 zero scan and documentation 2023-06-23 18:15:53 -04:00
Peter McGoron 9c294be58d add ssh key 2023-06-22 15:59:06 -04:00
Peter McGoron 5717ef59df csr to micropython 2023-06-21 18:47:52 -04:00
Peter McGoron 93d9349430 rename hardware dockerfile pt 2 2023-06-20 13:14:26 -04:00
Peter McGoron beeb9a5b91 rename hardware docker file 2023-06-20 13:09:27 -04:00
Peter McGoron 2cdbc1ae9f make lawyers happy 2023-06-15 12:24:35 -04:00
Peter McGoron a560e51991 firmware is a form of software; gateware is the equivalent for FGPAs 2023-06-14 15:31:49 -04:00
Peter McGoron 6db818b629 import upsilon_docker repository 2023-06-14 15:13:16 -04:00