Commit 1c52fbf
authored
Merge of CSC fork into main UDB repository (#584)
* Finally able to generate MC100-32 PDF and it looks good.
* Forgot to switch profile_class method of a profile_release to use the updated $ref syntax (matching certificates).
* Forgot to make dest directory in profiles tasks.rake
* Fixing comments
* Fixes to uniq! (returns nil sometimes, not good).
* Improve tasks.rake message
* Found some extra places to rename cfg_arch to design.
* Looks like I found a bug in the csr_field type_cache. It was barfing if a different design was passed to it which seems bizzare since it goes out of its way to support having a different type for different designs. So, I modified it to work like the type cache in ast and do what I think it wanted to do in the first place.
* Rename routines ending in _extensions to _ext_reqs or _ext_vers to make it clearer the return type since I found bugs in the code related to this.
* RVB23 listed RVA as its class erroneously
* Renamed mandatory_extensions to mandatory_ext_reqs in places I shouldn't have (i.e. in @config). Also true for implemented and prohibited.
* Fixed instructions and CSRs in #291 (CRDs list things like instructions, CSRs, and traps that aren't in the configuration). Still need to fix traps and interrupts.
* Working on getting list of exceptions and interrupts correct for the design.
* Created IDesign that unit-level and Design can both use.
* Fixes due to introduction of Design class and removal of ConfiguredArchitecture inheritence from Architecture.
* One more fix
* Fix to bug found after merging in main.
* Change comment to kick off another regression test on GitHub server (seems to have failed incorrectly).
* task for profile is now profile_release_pdf.
* Renaming certificate to CRD in the backend. Also added proc_ prefix to frontend /arch files. And, also igore *.bak files in Git.
* Remove unneccessary concepts of base from architecture and portfolios (especially rakefiles). Now use cfg "_" instead of rv32 or rv64 since there really is no difference in the generated design.
* Adding missing items to .gitignore
* Created portfolio tasks.rake file and moved common Rake code from profile & CRD tasks.rake into it.
* Created portfolio backend with common tasks.rake code between portfolios. Also created include_erb method in PortfolioDesign that invokes ERB partial templates with a standard set of locals.
* Fix updated path to common templates
* Finished
* Portfolio name changes in preparation for CTP.
* One more typo apparently.
* Update profile release name
* Update UDB README to reflect updated Profile/CRD PDF names.
* Clean up adoc links before starting to mock up CTPs
* Added IDL functions to new portfolio appendix in preparation for linking to IDL. Also found more places to use link_to_* and anchor_for_* helpers.
* Found weird typo in backend_helper.rb causing manual regression test to fail.
* Changed anchors and links to use [[anchor]] and <<link>> after learning more about the nuances in adoc and looking at what the ISA manual does.
* Fixed bug I introduced in AntoraUtils (didn't realize that all IDL functions go to the same func.adoc file).
* Improve comment in AntoraUtils and add links to relevant Antora documentation.
* Changed anchors to use #[foo] syntax. Added preliminary CTP information to mul.yaml.
* Generating PDF for CTP with ISA manuals included in it.
* Improve auto update of changes from submodules.
* Started to finally make progress on actual CTP generated doc.
* Added mock instruction to Xmock extension. For testing CTP.
* Changed CTP rake to always sync to latest of csc-riscv-isa-manual.
* Starting to generate CTP coverage points
* Added support for instructions, extensions, CSRs, and CSR fields to have certification test plan information.
* Only add CTP content to CTP docs (was going in CRDs and Profiles too).
* Switch display of test procedures from table to list.
* Fixed regress bug due to incorrect constructor call to ExtensionVersion.
* Add CTP info to extensions, CSRs, and CSR fields
* Fix array in schema
* Improve formating of CTP and add mandatory ID
* Remove comments to work around commit yaml checker problem.
* Create proper adoc for CTP book part 1. Part 2 & 3 (ISA manuals) are giving an invalid part error.
* New version of isa manual (uses level 2 instead of level 1 headings for colophons and now the isa manuals are proper adoc "parts" in the overall "book").
* Improved display of coverage points and test procedures.
* Added Sail operation to instruction appendix.
* Added links from test procedures to coverage points.
* Fix bug in display of all extensions that define a parameter in a CRD.
* Renaming CertLinks to DocLinks since parameters will also use them.
* Renaming of CTP things
* More link doc
* Added priv modes and related specs to CTP by moving it from CRD into templates they can share.
* Update mock.yaml
Just adding a bogus extra line.
Signed-off-by: james-ball-qualcomm <[email protected]>
* Remove blank line
* Creating AC100 CRD from RVB23 profile.
* Forgot these files somehow.
* Added list of CSRs added by extension. Also other misc formating improvements.
* Fix bug in pages.yml that wasn't copying RVI20 correctly. Also reduced TOC levels to 3 since TOC is 200+ pages for AC100-CRD otherwise. And, try adding index.html for Portfolio artifacts.
* Found bug in RVI20U32 that was requiring version 2.2 of C extension but only 2.0 exists. Also, test:nightly was calling task regress but it has to call test:regress. Not sure how this was working in upstream.
* Fixes for version numbers in Yaml files now found by version check added in Ruby.
* Improve index.html to link to all portfolio-created artifacts and copy index.html in pages action.
* Switch to "git clone" for latest CSC fork of ISA manual from trying to use git submodules unreliably.
* Fix bug in bin/setup using braces around ROOT env instead of parenthesis.
* Fixed inst appendix to use adoc description list for coverpoints and test procedures
* Rename coverage points to normative rules to avoid confusion with system verilog coverage points.
* Make M extension optional in MC100 to make it a better pipe cleaner (so we have at least one optional extension).
* Changed cert steps to just passthru adoc from YAML instead of having defined steps. Also, removed name in test procedures since ID is enough. And added optional test file name.
* Add MockProcessor-CTP to list of pages.
* Update pages.yml
fix typo that wasn't copying mc100 CTP properly
* Switched from PDF page size from A4 to larger A3. Also, improved PDF outline and inst appendix headings.
* Remove all non UTF characters added by recent PR to main branch of UDB.
* Added AC200 CRD
* Moved priv modes from cert class to cert model.
* Fix for issue #479 - Certificates not properly processing optional extensions from profiles and S-mode profiles don't inherit U-mode profiles.
* Incorporate fixes to RVB23U64 typos found by Shehroz. Also fixed cert model schema to allow AC100 to be a parent of AC200 (schema was missing \\$parent_of in a couple of places).
* Issue #245 - Creating summary of RISC-V ISA in .xlsx
* Generating .xlsx file with extension name column.
* Made priv/unpriv ext type mandatory in schema and added where missing. Add all columns up to ratification date.
* Added profile presence to riscv summary
* Generating basic dynamic javascript table for riscv_summary backend with fake data.
* Generating javascript with riscv_summary using tabulator-master.
* Add riscv_summary to csc website
* Add -R to riscv_summary page copy
* Move riscv_summary earlier in pages, smoke, & regress since it is very fast.
* Renamed riscv_summary to isa_explorer
* Renamed isa_explorer html to browser.
* Forgot to rename xlsx dir to spreadsheet
* Add column definition to Tabulator to prepare for better formating and sorting.
* Add hyperlink to UDB extension doc to ISA Explorer Extension Name column.
* Improved column formatting, filtering, sorting
* Freeze extension name column
* Added instrucetion table and table height to speed loading in browser.
* Fixed bug in manual inst template
* Create csc_lib and copied upstream lib over original lib
* Accidentally staged lib.tar
* Making progress on merging in Derek's changes. Now hung up on defined_by? missing in DatabaseObject.
* Commiting changes before I start major surgery on my code.
* Remove isa_explorer temporarily from smoke test (since it won't work yet) and fix type checking bug I introduced into symbol_table.rb (now smoke passes).
* Pass config object to ConfiguredArchitecture constructor. Also couple of minor fixes to get smoke to pass.
* Make Config class an abstract base class and create ConfigFromFile child classes in preparation for Config from Portfolio.
* Added ConfigFromPortfolioGroup to satisfy the Config API with a PortfolioGroup object. Unfortunately there is a circular dependency I can't avoid because of additions made in the cpp_hart branch that require a cfg_arch in DatabaseObject base of the new ExtensionRequirementExpression and ConditionalExtensionVersionList classes. I'll need Derek's help to determine a way forward.
* Figured out how to work around cfg_arch circular dependency. Now able to build RVA20 Profile Release. Fixed other bugs I found due to lack of type checking in non-CSC code.
* Passing smoke test now including with ISA Explorer.
* About to copy main "backends" directory over top of mine to merge in changes.
* Finally passing regression test with my changes merged in manually.
* Update regress.yml
Missing empty line
Signed-off-by: james-ball-qualcomm <[email protected]>
* Fix trailing whitespace
* Fixes requested by Derek's review. More to come.
* Added missing classes for CTP caused by manual merge.
* Forgot to change schema of misa.M CTP stuff.
* Fixed schema in mul.yaml for CTP. Also, take advantage of higher priv profiles inheriting everything in lower-priv profiles.
* Making changes request by Derek's review such as adding tabulator-master to .gitmodules (still needs more work to remove copy of code), added CSR table to ISA explorer (actually a new feature), fixes to CTP generation and RVI20 generation, deploy.sh now prints more informative information about its progress and includes all CSC artifacts and the ISA explorer.
* Oops, had wrong max_base logic for portfolio_group.
* obj.rb rename to database_obj.rb wasn't made in this file. Causes regressions to fail right away.
* Fix for instruction appendix backend regression failure (https://github.com/riscv-software-src/riscv-unified-db/actions/runs/14432823958/job/40469667597?pr=584). Use old name for instruction anchor utility routine. Also removed some puts messages about including ERB files in portfolio-based backends that was making the regression log excessively long.
* Instruction appendix backend using old name for another function (convert_monospace_to_links is new name). Also, added regression test to debug launch configurations.
* For isa_explorer backend, remove tabulator-master Javascript code and instead just have HTML load it.
* Forgot to remove tabulator-master from git submodules.
* Forgot to stage some files.
* Rename XLEN to MXLEN in inst/mock.yaml
* Changes requested by 2nd half of Derek's review.
---------
Signed-off-by: james-ball-qualcomm <[email protected]>1 parent 215341e commit 1c52fbf
File tree
167 files changed
+6716
-3113
lines changed- .github/workflows
- .vscode
- arch
- certificate_class
- certificate_model
- csr
- ext
- inst
- M
- Zicond
- proc_cert_class
- proc_cert_model
- profile_class
- profile_release
- profile
- backends
- certificate_doc
- templates
- cfg_html_doc
- templates
- common_templates/adoc
- cpp_hart_gen
- cpp/include/udb
- ext_pdf_doc
- templates
- instructions_appendix
- templates
- isa_explorer
- manual
- templates
- portfolio
- templates
- proc_cert
- templates
- proc_crd
- templates
- proc_ctp
- templates
- profile_doc
- profile
- templates
- docs/ruby
- ext
- lib
- arch_obj_models
- idl
- test
- schemas
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
167 files changed
+6716
-3113
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
29 | 119 | | |
30 | 120 | | |
31 | 121 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
86 | 86 | | |
87 | 87 | | |
88 | 88 | | |
89 | | - | |
| 89 | + | |
90 | 90 | | |
91 | 91 | | |
92 | 92 | | |
| |||
97 | 97 | | |
98 | 98 | | |
99 | 99 | | |
100 | | - | |
| 100 | + | |
101 | 101 | | |
102 | 102 | | |
103 | 103 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
| 19 | + | |
19 | 20 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
46 | 46 | | |
47 | 47 | | |
48 | 48 | | |
49 | | - | |
50 | | - | |
| 49 | + | |
| 50 | + | |
51 | 51 | | |
52 | 52 | | |
53 | | - | |
54 | | - | |
| 53 | + | |
| 54 | + | |
55 | 55 | | |
56 | 56 | | |
57 | 57 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | | - | |
| 6 | + | |
7 | 7 | | |
8 | 8 | | |
9 | | - | |
| 9 | + | |
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
15 | | - | |
| 15 | + | |
16 | 16 | | |
17 | 17 | | |
18 | | - | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
19 | 109 | | |
20 | 110 | | |
21 | 111 | | |
| |||
24 | 114 | | |
25 | 115 | | |
26 | 116 | | |
27 | | - | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
28 | 154 | | |
29 | 155 | | |
30 | 156 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
| 22 | + | |
22 | 23 | | |
23 | 24 | | |
24 | 25 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
89 | 89 | | |
90 | 90 | | |
91 | 91 | | |
| 92 | + | |
92 | 93 | | |
93 | 94 | | |
94 | 95 | | |
| |||
166 | 167 | | |
167 | 168 | | |
168 | 169 | | |
| 170 | + | |
169 | 171 | | |
170 | 172 | | |
171 | 173 | | |
| |||
200 | 202 | | |
201 | 203 | | |
202 | 204 | | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
203 | 208 | | |
204 | 209 | | |
205 | 210 | | |
| |||
232 | 237 | | |
233 | 238 | | |
234 | 239 | | |
| 240 | + | |
235 | 241 | | |
236 | 242 | | |
237 | 243 | | |
| |||
0 commit comments