kareem
0eed96f33f
reharden: digital_pll
...
~ reimplement digital_pll using updated RTL
~ changes in config to generate same PDN
~ change deprecated variables
2022-10-13 06:21:08 -07:00
kareem
bb2d983e03
+ add a size 16 buf for clockp signal in digital_pll
2022-10-13 05:57:09 -07:00
M0stafaRady
8991af8ff1
Merge branch 'cocotb' of github.com:efabless/caravel into cocotb
2022-10-13 04:25:18 -07:00
M0stafaRady
5d3766edf7
update script and top level testbench for sdf
2022-10-13 04:25:14 -07:00
M0stafaRady
f5e1060c6d
Merge branch 'cocotb' of github.com:efabless/caravel into cocotb
2022-10-13 04:05:38 -07:00
M0stafaRady
ceac6defa1
fix some tests for gatelevel
2022-10-13 04:05:12 -07:00
M0stafaRady
95cca2dec0
optimize bitbang tests
2022-10-12 16:06:02 -07:00
M0stafaRady
7e6ec8d394
Merge branch 'caravel_redesign' into cocotb
2022-10-12 14:49:27 -07:00
M0stafaRady
dce509ab11
update script and testbench top level to include sdf
2022-10-12 14:41:37 -07:00
kareem
8c95a58e0d
~ regenerate chip_io netlist to fix missing power pins from constant blocks
2022-10-12 11:40:05 -07:00
M0stafaRady
ac6284599d
Merge branch 'caravel_redesign' into cocotb
2022-10-12 10:42:57 -07:00
M0stafaRady
e8870d6a8b
fix errors for gate level
2022-10-12 10:29:56 -07:00
kareem
9ccb0ff2ed
reharden!: caravel
...
~ reimplement based on updated views of the macros
~ change interactive script to call label_macro_pins
~ extract all spef and sdf corners using timing-scripts repo
!important same work arounds as before
2022-10-12 04:45:08 -07:00
mo-hosni
db2cc848b2
Added constant block openlane files and powered gl and modified housekeeping config.tcl
2022-10-12 04:12:27 -07:00
M0stafaRady
471e150167
Merge branch 'cocotb' of github.com:efabless/caravel into cocotb
2022-10-12 03:57:56 -07:00
M0stafaRady
d994a2e741
Merge branch 'cocotb' of github.com:efabless/caravel into cocotb
2022-10-12 03:57:33 -07:00
M0stafaRady
d464a475e0
update gpio tests to release housekeeping spi csb
2022-10-12 03:57:22 -07:00
M0stafaRady
10618bd41c
Merge branch 'caravel_redesign' into cocotb
2022-10-12 02:05:27 -07:00
M0stafaRady
685518477d
add folder to store important sessions
2022-10-12 02:03:06 -07:00
mo-hosni
76f8d37496
Rehardened housekeeping to fix Antenna violations.
2022-10-11 16:41:50 -07:00
M0stafaRady
71829abbc5
Merge branch 'cocotb' of github.com:efabless/caravel into cocotb
2022-10-11 14:00:58 -07:00
M0stafaRady
2a5c7b876b
fix some timeout and errors due to cpu became slower and sram interface are deleted
2022-10-11 14:00:49 -07:00
M0stafaRady
de6d55f3ee
trial for increase SPI clock
2022-10-11 13:44:56 -07:00
M0stafaRady
bd40646465
Update caravel to force high at gpio3 at the start of test
2022-10-11 08:30:02 -07:00
kareem
b0abb4e164
add chip_io gl
...
~ update interactive script for chip_io.v for recent openlane
~ update config.tcl for recent openlane
~ add a verilog stub for sky130_fd_io__top_xres4v2 as
the io verilog models are not readable by yosys
2022-10-11 07:35:13 -07:00
M0stafaRady
9cc8ebf28a
update verify_cocotb script to include sdf
2022-10-11 07:30:37 -07:00
M0stafaRady
3fe7f3f38b
fix tests timeout
2022-10-11 06:04:16 -07:00
M0stafaRady
327900b526
fix bug of wrapper ack
2022-10-11 06:02:44 -07:00
M0stafaRady
150d83fe48
Merge branch 'caravel_redesign' into cocotb
2022-10-11 03:56:05 -07:00
Mohamed Shalan
68b7d7f99f
Merge pull request #173 from mo-hosni/caravel_redesign
...
Caravel redesign
2022-10-11 10:48:50 +02: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 Hosni
ee17bcf177
Merge branch 'efabless:caravel_redesign' into caravel_redesign
2022-10-11 01:47:06 -07:00
mo-hosni
df05079b6f
update houskeepong powere netlst and fixed some antenna violations
2022-10-11 01:46:23 -07: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
mo-hosni
e1b2509aad
update mgmt_protect gl to be powered
2022-10-11 01:40:51 -07: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
7fe790649d
Add gpio_all_bidir_user test
2022-10-10 15:59:20 -07:00
M0stafaRady
8cca3a5002
Add gpio_all_i_pd_user and gpio_all_i_pu_user
2022-10-10 14:49:24 -07: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
M0stafaRady
a572a8ec14
add gpio_all_i_user test
2022-10-10 09:07:32 -07:00
M0stafaRady
e2245ad333
enhance gpio_all_i test to include more checkers
2022-10-10 07:42:02 -07:00
M0stafaRady
71d53b9958
added netlist for vcs gl_caravel_vcs.list rtl_caravel_vcs.list
2022-10-10 06:23:47 -07:00
kareem
f4218ddde9
reharden!: gpio_control_block
...
- reimplement using a sparecell
- reimplement using newest open_pdks
!important using openlane pre odb with some local patches which
most if not all are merged in the current head of openlane however
still takes effort to update the interactive script to be latest
openlane compatible
!important override abstract lef generated by openlane. openlane
generates lef and mag that contain def BLOCKAGE layers that cause
congestions during top level routing
2022-10-10 05:42:29 -07:00
kareem
3a81dde555
add sky130_fd_sc_hd__macro_sparecell inside gpio_control_block rtl
2022-10-10 05:24:25 -07:00
kareem
71e309a923
some rtl changes
...
- remove unused port in chip_io
- move the rest of chip_io power ports to the USE_POWER_PINS guard
- add caravel_power_routing cell guarded by TOP_ROUTING ifdef
2022-10-10 05:13:48 -07:00
Mohamed Hosni
40098f693e
Merge branch 'efabless:caravel_redesign' into caravel_redesign
2022-10-10 05:08:33 -07:00
M0stafaRady
0f0a495906
merge with caravel_redesign
2022-10-10 05:04:44 -07:00
kareem
285ef6b642
reharden!: caravel
...
~ update the following views:
def
mag
verilog
spef(all corners)
+ add the ability to override the interactive script filename
+ add the ability to run openlane regression using regression.config
file
~ change GRT ADJUSTMENT values
~ change pointers to some files for workarounds
!important the interactive script still needs updates
!important this was done using old openlane v0.22 and its matching
pdk
!important known workarounds:
- a custom techlef is used where large metal spacing rules are the
only ones present to avoid violations by the router
- some odd behaviour happening when a macro has a lef view
with a non zero origin. so the power routing cell is (temporarily)
modified to have a zero origin and its placement has been shifted
which doesn't match the power routing mag.
- the old openlane doesn't generate multi spef corners. they
are generated using timing-scripts repo
2022-10-10 04:51:05 -07:00
M0stafaRady
688429eeda
move caravel.py, cpu.py ... to interfaces directory
2022-10-10 04:50:45 -07:00
M0stafaRady
45a885caaa
update verify_cocotb script to be dependent on CARAVEL_ROOT and MCW_ROOT
2022-10-10 04:34:26 -07:00
Mohamed Hosni
fa441babea
Merge branch 'efabless:caravel_redesign' into caravel_redesign
2022-10-10 01:24:24 -07:00
mo-hosni
7a7690ba10
Update housekeeping
2022-10-10 01:21:51 -07:00
mo-hosni
7e5891dd9f
Update mgmt_protect
2022-10-10 01:19:40 -07:00
M0stafaRady
00364eb092
Add gpio_all_o_user test
2022-10-09 07:53:25 -07:00
Mohamed Shalan
7538c8c776
Merge pull request #161 from efabless/chip_io_rework
2022-10-09 16:31:28 +02:00
M0stafaRady
1690c8e068
enhance gpio_all_o test
2022-10-09 06:07:19 -07:00
M0stafaRady
08229d6a9b
Add gpio_all_bidir test but it still not working yet
2022-10-09 05:08:12 -07:00
mo-hosni
dde6e034e0
added constant_block view
2022-10-08 12:05:53 -07:00
Tim Edwards
d1a3922dbb
Initial commit for rework of chip_io and chip_io_alt layouts;
...
includes RTL change inside the padframe definition to remove one
previously unnoticed hard-wired connection between VDDIO and a
3.3V domain digital input pin.
2022-10-08 12:05:10 -04:00
M0stafaRady
e94a8e0477
add test la test
2022-10-08 06:25:26 -07:00
M0stafaRady
d90001eac2
update caravel.py to disable bin 3 also
2022-10-08 01:56:41 -07:00
mo-hosni
d6ca7f9091
rehardened housekeeping after rtl update, and fixed all hold and transition violations.
2022-10-07 16:59:01 -07:00
Mohamed Hosni
5c38e38767
Merge branch 'efabless:caravel_redesign' into caravel_redesign
2022-10-07 16:52:16 -07: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
2dc29bb207
comment disabling the housekeeping at the begining of each test as it's not needed anymore
2022-10-07 07:02:58 -07:00
M0stafaRady
0f167fc041
update timeout for gpio_all_i_pd and gpio_all_i_pu
2022-10-07 07:02:09 -07:00
M0stafaRady
f072e9cb2d
Add gpio_all_i_pd
2022-10-07 06:41:21 -07:00
M0stafaRady
6f832589c0
merge caravel_redesign
2022-10-07 06:06:14 -07:00
M0stafaRady
e1eba1d534
update gpio_all_i_pu test
2022-10-07 06:04:18 -07:00
kareem
6d1d618974
reharden!: gpio_control_block
...
- rtl updated
~ add one column to the right to pass placement congestion
~ density adjusted (probably has no effect)
+ manually add isosubstrate layer in mag and gds from older iterations
!important still need to run dynamic simulations
!important depends on some updates to openlane
!important need to be able to recreate using newer openlane versions
2022-10-07 05:02:14 -07: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
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
Tim Edwards
a07d0d5dac
Fixed one small error in the housekeeping module that was surfaced
...
by the pull-up/pull-down testbench.
2022-10-06 15:57:45 -04:00
M0stafaRady
3eb0b11380
update verify_cocotb.py to remove vcs generate files
2022-10-06 11:18:48 -07:00
M0stafaRady
4f483adb36
update hk_regs_wr_wb_cpu test to include all house keeping regs
2022-10-06 11:16:07 -07:00
M0stafaRady
7e407e1155
Add test hk_disable
2022-10-06 10:12:12 -07:00
M0stafaRady
28b453783f
Add clock redirect test
2022-10-06 09:20:06 -07:00
R. Timothy Edwards
611c320eed
Merge branch 'caravel_redesign' into make_CSB_a_pullup
2022-10-06 11:39:22 -04:00
M0stafaRady
fb34d9a541
update input tests to cover the gpio from 32 to 37
2022-10-06 05:32:46 -07:00
M0stafaRady
a69185dfca
update verify_cocotb.py script to collect coverage only when -cov is passed
2022-10-06 04:44:55 -07:00
M0stafaRady
1bc78c4eea
update verify_cocotb.py script to collect coverage only when -cov is passed
2022-10-06 04:43:02 -07:00
M0stafaRady
8e72d5e13e
Add test uart_loopback
2022-10-06 03:12:44 -07:00
M0stafaRady
6830c79ae8
fix uart_rx tests by sending in reverse and use uart_ev_pending_write(UART_EV_RX);
2022-10-06 02:14:59 -07:00
Tim Edwards
42805f767e
Removed some references to mgmt_soc_litex files that had been added
...
to caravel_netlists.v when attempting to determine if the
verification testbenches could be run from caravel referencing
caravel_mgmt_soc_litex instead of the other way around. This file
has been reverted back to its original form.
2022-10-05 21:43:29 -04:00
Tim Edwards
e2556cc11b
Removed the SPARE_LOGIC_BLOCK ifdef...endif from around the spare
...
logic in caravel.v and caravan.v. These had been added to the
caravel_stanford branch because the spare logic blocks are not
usefully synthesizable.
2022-10-05 21:37:55 -04:00
R. Timothy Edwards
268f5dd7e9
Merge branch 'caravel_redesign' into fix_direct_power_connections
2022-10-05 21:33:17 -04:00
Tim Edwards
83f58cbe65
Added back a "genvar" statement that was deleted from housekeeping
...
along with an unused block, but was needed elsewhere.
2022-10-05 21:05:58 -04:00
Tim Edwards
72341326e2
Corrected a typo in the definition of the mgmt_io_oeb vector in
...
caravel.v, which should be the same as mgmt_io_in and mgmt_io_out
and should equal the number of user I/O pads (38).
2022-10-05 20:52:21 -04: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
M0stafaRady
a6e7b46128
delete reading from uart register in uart_rx test
2022-10-05 15:07:38 -07:00
M0stafaRady
78613c95cc
increase timeout for uart_rx and add uart_ev_pending_write
2022-10-05 15:02:07 -07:00
M0stafaRady
8e21a2f722
Add test pll
2022-10-05 13:58:36 -07:00
M0stafaRady
b31efbdeea
IO[0] affects the uart selecting btw system and debug
2022-10-05 13:47:23 -07:00
mo-hosni
9c850bf94b
rehardened housekeeping
2022-10-05 12:35:03 -07:00
mo-hosni
fcc009e65a
rehardeneded mgmt_protect
2022-10-05 12:26:24 -07:00
Tim Edwards
577cc12fe0
Implemented fix from early issue #16 . Finally decided to pull the
...
trigger on this one in the hopes that it helps prevent user error
in implementing input pull-up and pull-down on GPIO pins.
2022-10-05 14:13:57 -04:00
M0stafaRady
fca511f306
change docker mount from the home to repo directory and pdk root
2022-10-05 11:10:24 -07:00
M0stafaRady
a741ec4525
Merge branch 'caravel_redesign' into cocotb
2022-10-05 08:24:30 -07:00
M0stafaRady
4610f6b004
Add trial of test gpio_all_i_pu still not work
2022-10-05 08:22:51 -07:00
R. Timothy Edwards
69240123c0
Merge branch 'caravel_redesign' into make_CSB_a_pullup
2022-10-05 10:18:35 -04:00
Tim Edwards
7276623d3c
Corrected the pull-up definition and revised the CSB definition to
...
match the corrected defintions (namely, pull-up is configuration
0x0801, and pull-down is configuration 0x0c01).
2022-10-05 10:02:24 -04:00
M0stafaRady
650483eaa2
fix some typos on mgmt_protect
2022-10-05 03:27:46 -07:00
M0stafaRady
4b762da8e6
merge with caravel_redesign
2022-10-04 10:57:56 -07:00
M0stafaRady
e2b345dcbb
Add new test user_pass_thru_rd
2022-10-04 10:55:53 -07:00
M0stafaRady
0bd6c73b7b
update verify_cocotb script to merge coverage
2022-10-04 10:47:07 -07:00
M0stafaRady
5e523bce5b
Add spi master temp created to simulate the silicon validation test and to be removed after
2022-10-04 10:46:34 -07: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
M0stafaRady
11330823b7
Add hk_regs_wr_wb_cpu test
2022-10-04 03:24:15 -07:00
R. Timothy Edwards
cda2c87ae8
Merge branch 'caravel_redesign' into make_CSB_a_pullup
2022-10-03 17:39:24 -04:00
Tim Edwards
de9605a01b
Modified the mgmt_protect module to change the tristate outputs to
...
zero level outputs when the user project area is powered down.
That allows the synthesis tools to buffer these outputs. The
protection from floating inputs is left as-is, but all logic that
was unnecessary to be specified by gate instances has been changed
to RTL. This leaves only a handful of signals (logic analyzer input,
user IRQ, and wishbone data out and acknowledge out) to be handled
by explicit logic gate instances.
2022-10-03 16:11:02 -04:00
M0stafaRady
ef9c2e408b
fix bug at IRQ_uart
2022-10-03 09:49:51 -07:00
M0stafaRady
37244a2514
add 3 regressions r_rtl , r_gl,r_sdf
2022-10-03 09:01:08 -07:00
M0stafaRady
c4859c8789
fix bug at reading from debug registers
2022-10-03 08:57:23 -07:00
M0stafaRady
e81416bb51
add new test mgmt_gpio_bidir
2022-10-03 08:56:46 -07:00
M0stafaRady
e945c3b882
fix bug at mgmt_gpio_out by increasing the number of phases
2022-10-03 05:45:55 -07:00
M0stafaRady
79f26f6b38
add new test spi_master_rd
2022-10-03 05:36:36 -07:00
M0stafaRady
55f6f56921
update verify_cocotb script to run iverilog inside a docker
2022-10-03 01:56:08 -07:00
M0stafaRady
de2f4a3707
Add bitbang_spi_i test
2022-10-02 08:38:00 -07:00
M0stafaRady
e661740208
Merge branch 'cocotb' of github.com:efabless/caravel into cocotb
2022-10-02 06:55:52 -07:00
M0stafaRady
f3792b8421
merge with caravel_redesign
2022-10-02 06:55:41 -07:00
M0stafaRady
9812aedaa1
Update README.md
2022-10-02 15:50:18 +02:00
M0stafaRady
f0494ef4b1
update make file to take user_project_wrapper file as input for iverilog
2022-10-02 06:48:29 -07:00
M0stafaRady
927c216a6b
Merge branch 'cocotb' of github.com:efabless/caravel into cocotb
2022-10-02 06:38:32 -07:00
M0stafaRady
752d12928b
fix iverlog command for the new structure
2022-10-02 06:38:22 -07:00
M0stafaRady
d8a4b812e8
update script to make hex_files directory if not exists and to take argument -vcs if it will work in vcs mode
2022-10-02 06:37:12 -07:00
M0stafaRady
00a029fec3
Update README.md
2022-10-02 15:17:21 +02:00
M0stafaRady
bf9b363f68
Update README.md
2022-10-02 15:01:15 +02:00
M0stafaRady
32607cc118
delete uart_rx hex
2022-10-02 05:40:44 -07:00
M0stafaRady
b045977af0
merge with remote branch
2022-10-02 05:39:23 -07:00
M0stafaRady
cb929cb329
Fix housekeeping spi tests
2022-10-02 05:37:27 -07:00
M0stafaRady
bc9eb2eb31
Update README.md
2022-10-02 14:35:49 +02:00
M0stafaRady
928fc6a2a5
Update README.md
2022-10-02 14:27:42 +02:00
M0stafaRady
a0da0fc906
add photo of cocotb structure
2022-10-02 14:10:17 +02:00
M0stafaRady
ad053568e7
Create README.md
...
add READme in doc file
2022-10-02 14:09:49 +02:00
M0stafaRady
bd712f64d4
rename cocotb.py to verify_cocotb.py
2022-10-02 04:29:48 -07:00
M0stafaRady
b5fb97e5f4
rename run.py to cocotb.py
2022-10-02 04:22:44 -07:00
M0stafaRady
9e0be5473d
remove hex files from directory
2022-10-02 04:20:32 -07:00
M0stafaRady
1c48f527b8
add bitbang_spi_o tests
2022-10-01 12:39:54 -07:00
M0stafaRady
199d5c0f5c
fix bug assert csb before reset for the GL sim to work
2022-10-01 12:36:02 -07:00
M0stafaRady
53e868abdf
add clock to the output od configuration function
2022-10-01 12:34:53 -07:00
M0stafaRady
d12fac2ad1
update run script to delete vcs files before test run
2022-10-01 12:28:52 -07:00
M0stafaRady
555488c832
fix timeout values to the passing number of cycles required + 10%
2022-10-01 04:11:46 -07:00
M0stafaRady
9615629a42
fix bug bit time calculation
2022-10-01 02:53:24 -07:00
M0stafaRady
68c88b116a
increase the clock period to 25ns
2022-10-01 02:52:30 -07:00
M0stafaRady
18b4f36525
add test uart_rx
2022-10-01 02:23:47 -07:00
M0stafaRady
407b0be306
Update script to return fatal error when hex generation fails
2022-10-01 01:48:55 -07:00
M0stafaRady
f2ca45358b
remove AN.DB folder from git hub
2022-09-30 03:52:34 -07:00