Skip to content

Commit

Permalink
[ci] Move English Breakfast verilator jobs to GitHub Actions
Browse files Browse the repository at this point in the history
Signed-off-by: James Wainwright <[email protected]>
  • Loading branch information
jwnrt committed Sep 30, 2024
1 parent 6819083 commit 16df9c2
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 65 deletions.
19 changes: 19 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -96,3 +96,22 @@ jobs:
suggest_fixes: 'false'
config_file: ${{ env.verible_config }}
extra_args: "--waiver_files=verible_waiver"

verilator_englishbreakfast:
name: Verilated English Breakfast
runs-on: ubuntu-20.04
needs: quick_lint
steps:
- uses: actions/checkout@v4
- name: Install dependencies
uses: ./.github/actions/install-deps
- name: Build simulator with Verilator
run: ./ci/scripts/build-chip-verilator.sh englishbreakfast
- name: Upload binary
uses: actions/upload-artifact@v4
with:
name: verilated_englishbreakfast
path: build-bin/hw/top_englishbreakfast/Vchip_englishbreakfast_verilator
overwrite: true
- name: Test
run: ./ci/scripts/run-english-breakfast-verilator-tests.sh
65 changes: 0 additions & 65 deletions azure-pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -278,33 +278,6 @@ jobs:
condition: succeededOrFailed()
continueOnError: True

- job: chip_englishbreakfast_verilator
displayName: Verilated English Breakfast (Build)
# Build Verilator simulation of the English Breakfast toplevel design
dependsOn: lint
condition: and(succeeded(), eq(dependencies.lint.outputs['DetermineBuildType.onlyDocChanges'], '0'), eq(dependencies.lint.outputs['DetermineBuildType.onlyCdcChanges'], '0'))
pool:
vmImage: ubuntu-20.04
steps:
- template: ci/checkout-template.yml
- template: ci/install-package-dependencies.yml
- bash: |
python3 --version
fusesoc --version
verilator --version
verible-verilog-lint --version
displayName: Display environment
# Check that all englishbreakfast countermeasures are implemented.
- bash: ci/scripts/check-countermeasures.sh englishbreakfast
displayName: Check countermeasures for top_englishbreakfast
continueOnError: True
- bash: ci/scripts/build-chip-verilator.sh englishbreakfast
displayName: Build simulation with Verilator
- template: ci/upload-artifacts-template.yml
parameters:
includePatterns:
- "/hw/top_englishbreakfast/Vchip_englishbreakfast_verilator"

- job: execute_verilated_tests
displayName: Fast Verilated Earl Grey tests
# Build and run fast tests on sim_verilator
Expand Down Expand Up @@ -337,44 +310,6 @@ jobs:
includePatterns:
- "/hw/top_earlgrey/Vchip_earlgrey_verilator"

# Software targeting the English Breakfast top level is produced by patching
# the source tree before building. This builds a selected subset of software
# only.
# TODO: This is a rather ugly hack, which will go away once we properly support
# building more than one top-level design with different parametrizations.
# Work towards this goal is tracked in issue #4669.
- job: build_and_execute_verilated_tests_englishbreakfast
displayName: Verilated English Breakfast (Execute)
# Build and execute tests on the Verilated English Breakfast toplevel design with Bazel
pool:
vmImage: ubuntu-20.04
dependsOn: chip_englishbreakfast_verilator
steps:
- template: ci/checkout-template.yml
- template: ci/install-package-dependencies.yml
- template: ci/download-artifacts-template.yml
parameters:
downloadPartialBuildBinFrom:
- chip_englishbreakfast_verilator
- template: ci/load-bazel-cache-write-creds.yml
- bash: |
. util/build_consts.sh
ci/scripts/run-english-breakfast-verilator-tests.sh
displayName: Execute tests
- bash: |
. util/build_consts.sh
mkdir -p "$BIN_DIR/sw/device/lib/testing/test_rom"
cp $(ci/scripts/target-location.sh \
//sw/device/lib/testing/test_rom:test_rom_fpga_cw305 \
--features=-rv32_bitmanip \
--copt=-DOT_IS_ENGLISH_BREAKFAST_REDUCED_SUPPORT_FOR_INTERNAL_USE_ONLY_) \
"$BIN_DIR/sw/device/lib/testing/test_rom"
displayName: Copy test_rom_fpga_cw305 to $BIN_DIR
- template: ci/upload-artifacts-template.yml
parameters:
includePatterns:
- "/sw/device/lib/testing/test_rom/test_rom_fpga_cw305.32.vmem"

- job: otbn_standalone_tests
displayName: Run OTBN Smoke Test
dependsOn: lint
Expand Down

0 comments on commit 16df9c2

Please sign in to comment.