Muhammad Hadir Khan | 31ce539 | 2020-12-05 13:23:49 +0500 | [diff] [blame] | 1 | # ابتدا(Ibtida) SoC - Google SKY130 Shuttle |
| 2 | An Soc designed to be included inside the Caravel, a template SoC for Google SKY130 free shuttles. |
shalan | 0d14e6e | 2020-08-31 16:50:48 +0200 | [diff] [blame] | 3 | |
Muhammad Hadir Khan | 2db7cad | 2020-11-29 00:55:20 +0500 | [diff] [blame] | 4 | ابتدا means the start of something. This is a minimal SoC built around a RISC-V based 5 stage pipelined core Buraq-Mini. Both the SoC and the core are made from scratch using CHISEL HDL. The CHISEL source code as well as the emitted verilog are provided in the relvant folders. It is still Work In Progress (WIP). The current SoC architecture is given below. |
shalan | 0d14e6e | 2020-08-31 16:50:48 +0200 | [diff] [blame] | 5 | |
| 6 | <p align=”center”> |
Muhammad Hadir Khan | 67ee2c8 | 2020-12-05 01:21:49 +0500 | [diff] [blame] | 7 | <img src="/doc/ibtida-soc.png" > |
shalan | 0d14e6e | 2020-08-31 16:50:48 +0200 | [diff] [blame] | 8 | </p> |
| 9 | |
Muhammad Hadir Khan | eb02afc | 2020-12-05 01:38:28 +0500 | [diff] [blame] | 10 | ## Design hierarchy |
shalan | 0d14e6e | 2020-08-31 16:50:48 +0200 | [diff] [blame] | 11 | |
Muhammad Hadir Khan | 31ce539 | 2020-12-05 13:23:49 +0500 | [diff] [blame] | 12 | Chisel source code is available here: |
Muhammad Hadir Khan | eb02afc | 2020-12-05 01:38:28 +0500 | [diff] [blame] | 13 | ``` |
| 14 | chisel/ |
Muhammad Hadir Khan | 2052be1 | 2020-12-05 12:58:59 +0500 | [diff] [blame] | 15 | ├── Buraq-Mini (core source) |
Muhammad Hadir Khan | eb02afc | 2020-12-05 01:38:28 +0500 | [diff] [blame] | 16 | │ │–– RV32i |
Muhammad Hadir Khan | 2052be1 | 2020-12-05 12:58:59 +0500 | [diff] [blame] | 17 | │ └── src |
| 18 | │–– TileLink (bus source) |
| 19 | │ └── src |
| 20 | └── src (SoC source) |
Muhammad Hadir Khan | 31ce539 | 2020-12-05 13:23:49 +0500 | [diff] [blame] | 21 | ``` |
| 22 | The emitted verilog is present here: |
| 23 | ``` |
| 24 | verilog/ |
| 25 | ├── rtl |
| 26 | │ ├──ibtida-soc |
| 27 | │ │ └── Ibtida_top_dffram_cv.v |
agorararmard | dc723a6 | 2020-11-26 20:00:29 +0200 | [diff] [blame] | 28 | |
Muhammad Hadir Khan | 31ce539 | 2020-12-05 13:23:49 +0500 | [diff] [blame] | 29 | ``` |
| 30 | The synthesized netlist is present here: |
| 31 | ``` |
| 32 | verilog/ |
| 33 | ├── gl |
| 34 | │ └── Ibtida_top_dffram_cv.v |
| 35 | ``` |
| 36 | The hardened macros are placed here: |
| 37 | ``` |
| 38 | def/ |
| 39 | └── Ibtida_top_dffram_cv.def.gz |
| 40 | ``` |
| 41 | ``` |
| 42 | lef/ |
| 43 | └── Ibtida_top_dffram_cv.lef |
| 44 | ``` |
| 45 | ``` |
| 46 | gds/ |
| 47 | └── Ibtida_top_dffram_cv.gds.gz |
Muhammad Hadir Khan | eb02afc | 2020-12-05 01:38:28 +0500 | [diff] [blame] | 48 | ``` |
Muhammad Hadir Khan | 8a47945 | 2020-12-09 11:57:18 +0500 | [diff] [blame^] | 49 | |
| 50 | ## Todo |
| 51 | - [ ] Change the repo name to integrate "caravel_". |
| 52 | - [ ] Update the project with the caravel mpw-one-a branch. |
| 53 | - [ ] Update the openlane with the mpw-one-a branch. |
| 54 | - [ ] Verify the synthesized netlist. |
| 55 | - [ ] Harden the design macro with 0 drc/lvs violations. |
| 56 | - [ ] Harden the user project wrapper with 0 drc/lvs violations. |
| 57 | - [ ] On-board the user project to Caravel. |
| 58 | - [ ] Pass all the pre-checks. |
| 59 | - [ ] Update the request to "Submitter Confirmed". |
| 60 | |
Hadir Khan | f78084f | 2020-12-03 20:25:49 +0500 | [diff] [blame] | 61 | ## Contributors |
Muhammad Hadir Khan | 2db7cad | 2020-11-29 00:55:20 +0500 | [diff] [blame] | 62 | Main contributors are: |
Muhammad Hadir Khan | 31ce539 | 2020-12-05 13:23:49 +0500 | [diff] [blame] | 63 | 1. Engr. Muhammad Hadir Khan (RTL design based on CHISEL) (__Owner__). |
Muhammad Hadir Khan | 2db7cad | 2020-11-29 00:55:20 +0500 | [diff] [blame] | 64 | 2. Sajjad Ahmed (RTL design based on CHISEL). |
Muhammad Hadir Khan | 31ce539 | 2020-12-05 13:23:49 +0500 | [diff] [blame] | 65 | 3. Engr. Aireen Amir Jalal (APR flow with OpenLANE RTL-GDSII). |
agorararmard | 7d6fadb | 2020-11-25 20:23:20 +0200 | [diff] [blame] | 66 | |
Muhammad Hadir Khan | 2db7cad | 2020-11-29 00:55:20 +0500 | [diff] [blame] | 67 | Other contributors: |
Muhammad Hadir Khan | 8a47945 | 2020-12-09 11:57:18 +0500 | [diff] [blame^] | 68 | |
Muhammad Hadir Khan | 31ce539 | 2020-12-05 13:23:49 +0500 | [diff] [blame] | 69 | 4. Dr. Roomi Naqvi (Supervisor). |
| 70 | 5. Dr. Ali Ahmed (Supervisor). |
Muhammad Hadir Khan | 8a47945 | 2020-12-09 11:57:18 +0500 | [diff] [blame^] | 71 | 6. Usman Zain |