Skip to content

feat: adding certificate and CTP for RVI20 #889

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions Rakefile
Original file line number Diff line number Diff line change
Expand Up @@ -489,6 +489,10 @@ task :portfolios do
Rake::Task["#{$root}/gen/proc_ctp/pdf/MockProcessor-CTP.pdf"].invoke
portfolio_start_msg("MockProfileRelease")
Rake::Task["#{$root}/gen/profile/pdf/MockProfileRelease.pdf"].invoke
portfolio_start_msg("RVI20-32-CTP")
Rake::Task["#{$root}/gen/proc_ctp/pdf/RVI20-32-CTP.pdf"].invoke
portfolio_start_msg("RVI20-64-CTP")
Rake::Task["#{$root}/gen/proc_ctp/pdf/RVI20-64-CTP.pdf"].invoke
portfolio_start_msg("MC100-32-CTP")
Rake::Task["#{$root}/gen/proc_ctp/pdf/MC100-32-CTP.pdf"].invoke
portfolio_start_msg("MC100-32-CRD")
Expand Down Expand Up @@ -534,6 +538,8 @@ task "MockCTP": "#{$root}/gen/proc_ctp/pdf/MockProcessor-CTP.pdf"
task "MockProcessorCTP": "#{$root}/gen/proc_ctp/pdf/MockProcessor-CTP.pdf"
task "MockCTP-HTML": "#{$root}/gen/proc_ctp/pdf/MockProcessor-CTP.html"
task "MockProcessorCTP-HTML": "#{$root}/gen/proc_ctp/pdf/MockProcessor-CTP.html"
task "RVI20-32-CTP": "#{$root}/gen/proc_ctp/pdf/RVI20-32-CTP.pdf"
task "RVI20-64-CTP": "#{$root}/gen/proc_ctp/pdf/RVI20-64-CTP.pdf"
task "MC100-32-CTP": "#{$root}/gen/proc_ctp/pdf/MC100-32-CTP.pdf"
task "MC100-32-CTP-HTML": "#{$root}/gen/proc_ctp/pdf/MC100-32-CTP.html"
task "MC100-32-CRD": "#{$root}/gen/proc_crd/pdf/MC100-32-CRD.pdf"
Expand Down
16 changes: 16 additions & 0 deletions spec/std/isa/proc_cert_class/RVI.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
# SPDX-License-Identifier: BSD-3-Clause-Clear

# yaml-language-server: $schema=../../schemas/proc_cert_class_schema.json

$schema: proc_cert_class_schema.json#
kind: processor certificate class
processor_kind: Generic Unprivileged
name: RVI
long_name: RVI Certificate Class

introduction: |
The RVI certificate class corresponds to the RVI Profile Family.
This certificate class only includes the RISC-V Unprivileged ISA.
Certificates for the RVI certificate class are intended for internal
use by the RVCP (RISC-V Certification Program).
39 changes: 39 additions & 0 deletions spec/std/isa/proc_cert_model/RVI20-32.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
# SPDX-License-Identifier: BSD-3-Clause-Clear

# yaml-language-server: $schema=../../schemas/proc_cert_model_schema.json

$schema: proc_cert_model_schema.json#
kind: processor certificate model
name: RVI20-32
long_name: 32-bit RVI20 Certificate
class:
$ref: proc_cert_class/RVI.yaml#

# MXLEN
base: 32

# Semantic versions within the model
versions:
- version: "1.0.0"

revision_history:
- revision: "0.1.0"
date: "2025-07-03"
changes:
- Created

introduction: |
The RVI20-32 processor certificate corresponds to the RVI20U32 profile.

# Specification versions
tsc_profile_release:
$ref: profile_release/RVI20.yaml#
unpriv_isa_manual_revision: "20240411"

in_scope_priv_modes:
- U

extensions:
$inherits:
- "profile/RVI20U32.yaml#/extensions"
19 changes: 19 additions & 0 deletions spec/std/isa/proc_cert_model/RVI20-64.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
# SPDX-License-Identifier: BSD-3-Clause-Clear

# yaml-language-server: $schema=../../schemas/proc_cert_model_schema.json

$schema: proc_cert_model_schema.json#
kind: processor certificate model
name: RVI20-64
long_name: 64-bit RVI20 Certificate
class:
$ref: proc_cert_class/RVI.yaml#

$inherits: "proc_cert_model/RVI20-32.yaml#"

# MXLEN
base: 64

introduction: |
The RVI20-64 processor certificate corresponds to the RVI20U64 profile.
6 changes: 5 additions & 1 deletion tools/scripts/deploy.sh
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,8 @@ parallel ::: \
"./do gen:proc_crd_pdf[MC200-64]" \
"./do gen:proc_crd_pdf[MC300-32]" \
"./do gen:proc_crd_pdf[MC300-64]" \
"./do gen:proc_ctp_pdf[RVI20-32]" \
"./do gen:proc_ctp_pdf[RVI20-64]" \
"./do gen:proc_ctp_pdf[MC100-32]" \
"./do gen:proc_ctp_pdf[MockProcessor]"

Expand Down Expand Up @@ -160,7 +162,7 @@ for crd in AC100 AC200 MC100-32 MC100-64 MC200-32 MC200-64 MC300-32 MC300-64; do
deploy_cp gen/proc_crd/pdf/${crd}-CRD.pdf $DEPLOY_DIR/pdfs
done

for ctp in MC100-32 MockProcessor; do
for ctp in RVI20-32 RVI20-64 MC100-32 MockProcessor; do
deploy_log "Copy ${ctp}-CTP PDF"
deploy_cp gen/proc_ctp/pdf/${ctp}-CTP.pdf $DEPLOY_DIR/pdfs
done
Expand Down Expand Up @@ -244,6 +246,8 @@ cat <<- EOF > $DEPLOY_DIR/index.html
<br/>
<h3>CSC CTPs (Certification Test Plans)</h3>
<ul>
<li><a href="$PAGES_URL/pdfs/RVI20-32-CTP.pdf">RVI20-32 CTP</a></li>
<li><a href="$PAGES_URL/pdfs/RVI20-64-CTP.pdf">RVI20-64 CTP</a></li>
<li><a href="$PAGES_URL/pdfs/MC100-32-CTP.pdf">MC100-32 CTP</a></li>
<li><a href="$PAGES_URL/pdfs/MockProcessor-CTP.pdf">MockProcessor CTP (for UDB testing)</a></li>
</ul>
Expand Down
Loading