Commit Graph

154 Commits

Author SHA1 Message Date
R. Timothy Edwards 5029d71df6
Syntax changes that are non-functional from a synthesis perspective. (#324)
* Syntax changes that are non-functional from a synthesis perspective.
There are a few errors that are caught by commercial tools and halt
synthesis, which are handled more gracefully by the open source
tool flow.  In housekeeping.v:  Some wires declared after they are
used.  In housekeeping_spi.v:  A non-blocking "=" assignment used
where a blocking "<-" assignment was intended.

* Apply automatic changes to Manifest and README.rst

Co-authored-by: RTimothyEdwards <RTimothyEdwards@users.noreply.github.com>
2022-10-21 10:10:20 -07:00
M0stafaRady 096f5035f5
cocotb - updates related to enable simulating caraval using iverilog (#320)
* cocotb - updates related to enable simulating caraval using iverilog

* Apply automatic changes to Manifest and README.rst

Co-authored-by: M0stafaRady <M0stafaRady@users.noreply.github.com>
2022-10-21 07:43:34 -07:00
Jeff DiCorpo 4192c34f4b
Caravan redesign (#321)
* Fixed caravan top level power routing and updated views for mag, gds and lef

* caravan(rtl): updates

~ typos fix
- remove unused pin in chip_io_alt
+ add caravan_power_routing verilog

* Apply automatic changes to Manifest and README.rst

* ~ update caravan openlane configs to add extra cell references
~ correct placment and cell names of some macro in caravan interactive script

* reharden: caravan

+ add non functional blocks
+ add an initial iteration of caravan

* Apply automatic changes to Manifest and README.rst

* Revert "Fixed caravan top level power routing and updated views for mag, gds and lef"

This reverts commit 70628f748a.

* fixed caravan top level power routing

* reharden: caravan

based on new power routing
~ guard rtl chip_io power pins in the power macro guard

* Apply automatic changes to Manifest and README.rst

* fixed caravan top level power routing

* rehadren: caravan

+ add caravan signal routing to openlane run
~ change rtl to guard power and analog against routing by
openlane by ifndef TOP_ROUTING
~ add pr bounadry for caravan signal routing to fix origin issues

* Apply automatic changes to Manifest and README.rst

* fix power connection in buffering block and regenerate gl

* Apply automatic changes to Manifest and README.rst

* updated views for caravan

* Added extract unique to lvs-gds-cell target. (#313)

* This fixes errors in the top level RTL of caravan that failed to
hook up the buffers through the SoC correctly.

* Apply automatic changes to Manifest and README.rst

* reharden: caravan

~ rtl updated

* fixed caravan mag top level

* updated views for caravan + signoff

* fixed top level cell name

* fix syntax error related to signal initialization place in caravan (#319)

* fix syntax error related to signal initialization place in caravan- fixed in caravel in another commit

* Apply automatic changes to Manifest and README.rst

Co-authored-by: M0stafaRady <M0stafaRady@users.noreply.github.com>

* Apply automatic changes to Manifest and README.rst

Co-authored-by: Marwan Abbas <marwaneltoukhy@aucegypt.edu>
Co-authored-by: kareem <kareem.farid@efabless.com>
Co-authored-by: kareefardi <kareefardi@users.noreply.github.com>
Co-authored-by: Mitch Bailey <d-m-bailey@users.noreply.github.com>
Co-authored-by: Tim Edwards <tim@opencircuitdesign.com>
Co-authored-by: RTimothyEdwards <RTimothyEdwards@users.noreply.github.com>
Co-authored-by: Marwan Abbas <67271180+marwaneltoukhy@users.noreply.github.com>
Co-authored-by: M0stafaRady <107422726+M0stafaRady@users.noreply.github.com>
Co-authored-by: M0stafaRady <M0stafaRady@users.noreply.github.com>
Co-authored-by: jeffdi <jeffdi@users.noreply.github.com>
2022-10-21 07:37:41 -07:00
M0stafaRady 281d371600 Apply automatic changes to Manifest and README.rst 2022-10-20 13:32:50 +00:00
Mohamed Shalan 3fbc52ecbf
Merge pull request #276 from efabless/caravel_redesign-digital_pll-fanout
reharden!: digital_pll
2022-10-17 20:50:01 +02:00
mo-hosni b65affcfea Apply automatic changes to Manifest and README.rst 2022-10-17 18:40:46 +00:00
kareefardi d23141fc90 Apply automatic changes to Manifest and README.rst 2022-10-17 17:59:21 +00:00
passant5 3dba6d0663 Apply automatic changes to Manifest and README.rst 2022-10-17 17:53:07 +00:00
kareefardi d00ddb536a Apply automatic changes to Manifest and README.rst 2022-10-17 11:03:16 +00:00
marwaneltoukhy 2ad38fbb54 Apply automatic changes to Manifest and README.rst 2022-10-17 02:11:45 +00:00
marwaneltoukhy 7ec1eeb010 Merge branch 'caravel_redesign' into caravel_redesign-top-level 2022-10-16 18:39:39 -07:00
RTimothyEdwards 36c6c73787 Apply automatic changes to Manifest and README.rst 2022-10-17 01:10:28 +00:00
marwaneltoukhy 65a49d5b1d Apply automatic changes to Manifest and README.rst 2022-10-16 23:19:00 +00:00
kareefardi 84d1627151 Apply automatic changes to Manifest and README.rst 2022-10-16 22:48:34 +00:00
RTimothyEdwards b98db2dd4d Apply automatic changes to Manifest and README.rst 2022-10-16 16:53:57 +00:00
kareefardi f324d1759b Apply automatic changes to Manifest and README.rst 2022-10-15 15:49:11 +00:00
marwaneltoukhy 60247e3d75 Apply automatic changes to Manifest and README.rst 2022-10-15 13:45:37 +00:00
marwaneltoukhy c77a32ec97 Apply automatic changes to Manifest and README.rst 2022-10-15 11:37:27 +00:00
Marwan Abbas 696eddcc7b
Merge branch 'caravel_redesign' into buff_power_connection 2022-10-15 13:34:21 +02:00
marwaneltoukhy 1d924ded70 Apply automatic changes to Manifest and README.rst 2022-10-15 10:58:52 +00:00
marwaneltoukhy c9265568f6 Apply automatic changes to Manifest and README.rst 2022-10-15 09:50:52 +00:00
Marwan Abbas d025944505
Merge branch 'caravel_redesign' into buff_power_connection 2022-10-15 11:48:51 +02:00
marwaneltoukhy 34f555e1ad Apply automatic changes to Manifest and README.rst 2022-10-15 09:29:34 +00:00
passant5 4a30414db2 Apply automatic changes to Manifest and README.rst 2022-10-14 22:30:13 +00:00
passant5 8c0e4f7403
Merge branch 'caravel_redesign' into add_top_level_buffers 2022-10-15 00:28:14 +02:00
passant5 e7af9a3aec Apply automatic changes to Manifest and README.rst 2022-10-14 22:08:07 +00:00
passant5 3a229be6d3 Apply automatic changes to Manifest and README.rst 2022-10-14 20:17:07 +00:00
RTimothyEdwards c742a7f337 Apply automatic changes to Manifest and README.rst 2022-10-14 14:55:08 +00:00
marwaneltoukhy 143bccccbe Apply automatic changes to Manifest and README.rst 2022-10-13 19:16:21 +00:00
Marwan Abbas b8651328f9
Merge branch 'caravel_redesign' into cocotb 2022-10-13 21:14:42 +02:00
passant5 a3c1a3b3bc Apply automatic changes to Manifest and README.rst 2022-10-13 19:14:01 +00:00
marwaneltoukhy e25639ebef Apply automatic changes to Manifest and README.rst 2022-10-13 18:54:51 +00:00
kareefardi 1e7db0144e Apply automatic changes to Manifest and README.rst 2022-10-13 18:04:29 +00:00
kareefardi c30956832f Apply automatic changes to Manifest and README.rst 2022-10-13 18:02:35 +00:00
RTimothyEdwards e5c6038dfb Apply automatic changes to Manifest and README.rst 2022-10-13 17:33:42 +00:00
kareefardi 2a5d4e7111 Apply automatic changes to Manifest and README.rst 2022-10-13 13:56:39 +00:00
kareefardi 126bf1088d Apply automatic changes to Manifest and README.rst 2022-10-13 13:24:11 +00:00
M0stafaRady 6b35c237c0 Apply automatic changes to Manifest and README.rst 2022-10-11 13:05:44 +00:00
M0stafaRady 150d83fe48 Merge branch 'caravel_redesign' into cocotb 2022-10-11 03:56:05 -07:00
Mohamed Shalan 11530f691e
Merge pull request #165 from efabless/misc-rtl-changes
some rtl changes
2022-10-11 10:48:18 +02:00
Mohamed Shalan fe3d2b927f
Merge pull request #139 from efabless/cocotb
new environment for simulation automation with cocotb and vcs
2022-10-11 10:41:22 +02:00
Mohamed Shalan 344f806980
Merge pull request #166 from efabless/gpio_control_block-sparecell
gpio_control_block sparecell
2022-10-11 10:39:50 +02:00
Mohamed Shalan db9362d858
Merge branch 'caravel_redesign' into misc-rtl-changes 2022-10-11 10:39:32 +02:00
M0stafaRady fe0fd63cc2 Apply automatic changes to Manifest and README.rst 2022-10-10 23:00:50 +00:00
M0stafaRady 01a9fd928f
Fix typo at mprj_io (#168)
* Fix typo at mprj_io

* Apply automatic changes to Manifest and README.rst

Co-authored-by: M0stafaRady <M0stafaRady@users.noreply.github.com>
2022-10-10 12:11:05 -07:00
kareefardi eab0cab8eb Apply automatic changes to Manifest and README.rst 2022-10-10 12:26:45 +00:00
kareefardi 623be602c2 Apply automatic changes to Manifest and README.rst 2022-10-10 12:22:26 +00:00
kareefardi ace9274138 Apply automatic changes to Manifest and README.rst 2022-10-10 12:07:13 +00:00
M0stafaRady 0006ae4f25 Apply automatic changes to Manifest and README.rst 2022-10-10 12:06:07 +00:00
M0stafaRady 0f0a495906 merge with caravel_redesign 2022-10-10 05:04:44 -07:00
M0stafaRady f0037c35fd Apply automatic changes to Manifest and README.rst 2022-10-09 14:54:31 +00:00
RTimothyEdwards c0d6011ee8 Apply automatic changes to Manifest and README.rst 2022-10-08 16:07:53 +00:00
M0stafaRady 7b2994e70e Apply automatic changes to Manifest and README.rst 2022-10-08 13:26:20 +00:00
R. Timothy Edwards 7b271a7808
Effectively reverted the change to add spare logic blocks near each (#157)
* Effectively reverted the change to add spare logic blocks near each
of the GPIO control blocks by changing the definition of
NUM_SPARE_BLOCKS to 4 (the original number of spare logic blocks)
for both caravel and caravan top level RTL verilog modules.

* Apply automatic changes to Manifest and README.rst

Co-authored-by: RTimothyEdwards <RTimothyEdwards@users.noreply.github.com>
2022-10-07 09:28:13 -07:00
M0stafaRady 0aa649265e Apply automatic changes to Manifest and README.rst 2022-10-07 13:07:22 +00:00
Jeff DiCorpo 0e3badac29
152 add pass thru for clock and reset (#154)
* update caravel.v and caravan.v for clock and reset passthru.

* Apply automatic changes to Manifest and README.rst

* Apply automatic changes to Manifest and README.rst

Co-authored-by: jeffdi <jeffdi@users.noreply.github.com>
Co-authored-by: Mohamed Shalan <mshalan@aucegypt.edu>
Co-authored-by: shalan <shalan@users.noreply.github.com>
2022-10-07 01:36:26 -07:00
jeffdi 12358ee251 Apply automatic changes to Manifest and README.rst 2022-10-07 08:25:07 +00:00
R. Timothy Edwards cfbe353290
Added spare logic blocks for GPIO (#153)
* Added enough spare logic blocks to have the existing four above
the processor, plus one each per GPIO (38 for caravel, 27 for
caravan).

* Apply automatic changes to Manifest and README.rst

Co-authored-by: RTimothyEdwards <RTimothyEdwards@users.noreply.github.com>
Co-authored-by: Jeff DiCorpo <42048757+jeffdi@users.noreply.github.com>
2022-10-07 01:24:01 -07:00
R. Timothy Edwards be25ae7476
Remove SRAM read-only interface (#151)
* Removed the SRAM read-only interface by wrapping all related code
in an ifdef for "USE_SRAM_RO_INTERFACE", which is undefined.

* Apply automatic changes to Manifest and README.rst

Co-authored-by: RTimothyEdwards <RTimothyEdwards@users.noreply.github.com>
Co-authored-by: Jeff DiCorpo <42048757+jeffdi@users.noreply.github.com>
2022-10-07 01:23:07 -07:00
RTimothyEdwards 318e836af5 Apply automatic changes to Manifest and README.rst 2022-10-06 19:59:16 +00:00
RTimothyEdwards b140fdb6ac Apply automatic changes to Manifest and README.rst 2022-10-06 15:40:23 +00:00
R. Timothy Edwards 611c320eed
Merge branch 'caravel_redesign' into make_CSB_a_pullup 2022-10-06 11:39:22 -04:00
RTimothyEdwards 77b47e3b5c Apply automatic changes to Manifest and README.rst 2022-10-06 01:39:57 +00:00
RTimothyEdwards 6831b85e3c Apply automatic changes to Manifest and README.rst 2022-10-06 01:34:14 +00:00
R. Timothy Edwards 268f5dd7e9
Merge branch 'caravel_redesign' into fix_direct_power_connections 2022-10-05 21:33:17 -04:00
RTimothyEdwards 73c0d2b805 Apply automatic changes to Manifest and README.rst 2022-10-06 01:07:43 +00:00
RTimothyEdwards eaa21ea87b Apply automatic changes to Manifest and README.rst 2022-10-06 00:55:06 +00:00
Tim Edwards f5a9d4677e Revert "Implemented fix from early issue #16. Finally decided to pull the"
This reverts commit 577cc12fe0.

Reverting the change from issue #16.  After some discussion, it has
been decided that it is up to the user to implement the pull-up and
pull-down modes correctly by setting the output enable and driving
the output to the appropriate value.  Note that this should be well
documented, if by nothing else than a validation testbench that
excercises a user pull-up and pull-down input mode.
2022-10-05 20:46:03 -04:00
RTimothyEdwards 6a10542552 Apply automatic changes to Manifest and README.rst 2022-10-05 18:17:44 +00:00
RTimothyEdwards 51c6d04e31 Apply automatic changes to Manifest and README.rst 2022-10-05 14:19:44 +00:00
R. Timothy Edwards 69240123c0
Merge branch 'caravel_redesign' into make_CSB_a_pullup 2022-10-05 10:18:35 -04:00
RTimothyEdwards 5a9adc906d Apply automatic changes to Manifest and README.rst 2022-10-05 14:10:47 +00:00
M0stafaRady 8b242ecc8e Apply automatic changes to Manifest and README.rst 2022-10-05 10:29:42 +00:00
Mohamed Shalan 599ee23610
Merge pull request #137 from efabless/fix_caravan_gpio_default
Changed gpio_defaults_block_14 to gpio_defaults_block_25
2022-10-04 19:03:46 +02:00
Mohamed Shalan df08268f8a
Merge pull request #142 from efabless/remove_mgmt_protect_tristates
Remove mgmt protect tristates
2022-10-04 12:55:34 +02:00
RTimothyEdwards 1e4d518dd0 Apply automatic changes to Manifest and README.rst 2022-10-03 21:40:12 +00:00
R. Timothy Edwards cda2c87ae8
Merge branch 'caravel_redesign' into make_CSB_a_pullup 2022-10-03 17:39:24 -04:00
RTimothyEdwards d3ff5ab8fa Apply automatic changes to Manifest and README.rst 2022-10-03 20:16:32 +00:00
RTimothyEdwards b1208adfc6 Apply automatic changes to Manifest and README.rst 2022-09-29 18:11:39 +00:00
R. Timothy Edwards f07958d4ec
Merge branch 'caravel_redesign' into fix_pwr_ctrl_reset_value 2022-09-29 14:10:41 -04:00
Marwan Abbas c9c7fc5533
Merge pull request #134 from efabless/fix_user_pass_thru
Fix user pass thru
2022-09-29 19:52:13 +02:00
RTimothyEdwards 52d2b94e81 Apply automatic changes to Manifest and README.rst 2022-09-28 19:39:43 +00:00
RTimothyEdwards 170f5aa102 Apply automatic changes to Manifest and README.rst 2022-09-28 01:01:11 +00:00
RTimothyEdwards 586f5051e3 Apply automatic changes to Manifest and README.rst 2022-09-27 15:32:19 +00:00
jeffdi e3b2cd9458 Apply automatic changes to Manifest and README.rst 2022-09-21 17:37:17 +00:00
RTimothyEdwards 19a7b303e9 Apply automatic changes to Manifest and README.rst 2022-09-20 22:25:10 +00:00
RTimothyEdwards b9a819634d Apply automatic changes to Manifest and README.rst 2022-09-20 21:56:37 +00:00
RTimothyEdwards 3962b061f6 Apply automatic changes to Manifest and README.rst 2022-09-20 20:04:12 +00:00
RTimothyEdwards 54901e267c Apply automatic changes to Manifest and README.rst 2022-07-24 20:21:58 +00:00
RTimothyEdwards 485d9df7e3 Apply automatic changes to Manifest and README.rst 2022-06-07 14:46:03 +00:00
R. Timothy Edwards a2ccbd9e7e
Modified the set_user_id.py script so that mode "-report" returns a valid value. (#93)
* Modified the set_user_id.py script so that mode "-report" returns
a valid value, instead of throwing an error, because the "info.yaml"
file was removed without due consideration of the side effects.

* Apply automatic changes to Manifest and README.rst

Co-authored-by: RTimothyEdwards <RTimothyEdwards@users.noreply.github.com>
2022-05-08 22:50:48 -07:00
R. Timothy Edwards ad8d168555
Corrects four signal routes which were missing from the caravan top level (#88)
* Corrects four signals which were missing from the caravan top level
(management output and output enable to GPIO 0 and 1---these errors
would have prevented the houskeeping SPI from working on caravel).
Corrected RTL verilog (source of the error), GL verilog, and layout.

* Apply automatic changes to Manifest and README.rst

Co-authored-by: RTimothyEdwards <RTimothyEdwards@users.noreply.github.com>
2022-04-25 08:50:55 -07:00
R. Timothy Edwards 99518acd15
Numerous bug fixes, ending in clean full LVS for both caravel and caravan. (#76)
* (1) Modified the .magicrc file to set a default for PDK if not set in the
environment.  (2) Fixed the user ID programming layout to not leave holes
behind when the script moves the vias around (similar to the handling of
the GPIO defaults block).  (3) Added substrate isolation to gpio_control_block
and fixed the path references to the standard cells.  (4) Fixed the four
missing routes on the Caravan top level.  (5) Reinstated the large rendered
labels for the pads on both caravel and caravan.  (6) Corrected the top
level gate-level netlist for caravan to add the missing pins to the
management core wrapper.  (7) Did the same for the caravan top level RTL.
(8) Created scripts to run full LVS including extracting the management
core wrapper and reading all gate-level verilog submodules.  (9) Moved all
of the LVS scripts to the scripts directory.

* Apply automatic changes to Manifest and README.rst

* Made the changes from pull request #73 as they did not get merged
successfully, and if merged now they will generate conflicts with
this pull request in scripts/set_user_id.py.  So it's easier to
just manually add them to this pull request.

* Apply automatic changes to Manifest and README.rst

Co-authored-by: RTimothyEdwards <RTimothyEdwards@users.noreply.github.com>
2022-04-19 19:05:27 -07:00
R. Timothy Edwards 71600440bc
Caravan top lvs (#67)
* - update caravan configuration
* change correct gpio_default blocks instance names
* implement powerrouting work around
* place spare logic blocks
* keep the history of runs and sym link last/final one

* - update caravan mag, def and gl views
- add fake power routing cell in the rtl as a placeholder for openlane
  to prevent routing on that cell
- fix some syntax errors in chip_io_alt
- match simple_por lef pins with mag by regenerating it

* Apply automatic changes to Manifest and README.rst

* add caravan power routing lef

* - update mag and def view of caravan
- add_macro_placement for fake cell

* Added back the power routing to Caravan, fixed DRC errors, ran LVS,
corrected placement of isolated substrate regions, and replaced the
signal routing for the analog lines.  Be aware that merging with
main may cause issues with the mgmt_protect.mag file and its
subcells mprj2_logic_high.mag and mprj_logic_high.mag.  It may be
worth cherry-picking the files to merge and exclude those layouts.

Co-authored-by: kareem <kareem.farid@efabless.com>
Co-authored-by: kareefardi <kareefardi@users.noreply.github.com>
Co-authored-by: Jeff DiCorpo <42048757+jeffdi@users.noreply.github.com>
2022-04-14 15:05:16 -07:00
ef-gps c0f0ab4666
Merge pull request #64 from efabless/fix_set_user_script
Fix set user script
2022-04-12 13:16:44 -07:00
RTimothyEdwards 027adee904 Apply automatic changes to Manifest and README.rst 2022-04-12 19:50:03 +00:00
Marwan Abbas 14142eb2a1
Fix syntax error in gpio_control_block (#60)
* Fix syntax error in gpio_control_block

Fixed syntax error that was only visible when running iverilog for simulation

* Apply automatic changes to Manifest and README.rst

Co-authored-by: marwaneltoukhy <marwaneltoukhy@users.noreply.github.com>
2022-04-09 00:24:51 -07:00
R. Timothy Edwards 07012ce2aa
Corrected the issue reported on the github issue tracker (#34) (#50)
* Corrected the issue reported on the github issue tracker (#34)
in which the use of "clocking" as an instance name in caravel and
caravan conflicts with the system verilog keyword of the same
name.

* Apply automatic changes to Manifest and README.rst

Co-authored-by: RTimothyEdwards <RTimothyEdwards@users.noreply.github.com>
2022-04-07 07:44:57 -07:00
Jeff DiCorpo 5d8b579b6c
Merge pull request #49 from efabless/fix_user_id_prog
This commit fixes the issue with the user ID programming block not
2022-03-22 09:36:06 -07:00
kareefardi 374deaec62 Apply automatic changes to Manifest and README.rst 2022-03-22 15:03:30 +00:00