Initial commit

This commit is contained in:
2026-02-23 20:42:11 -07:00
committed by GitHub
commit 2ba96a115d
462 changed files with 9166588 additions and 0 deletions

View File

@@ -0,0 +1,28 @@
// SPDX-FileCopyrightText: 2023 Efabless Corporation
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
#include <firmware_apis.h>
void main(){
ManagmentGpio_write(0);
ManagmentGpio_outputEnable();
GPIOs_configure(6,GPIO_MODE_MGMT_STD_OUTPUT);
GPIOs_loadConfigs();
UART_enableTX(1);
ManagmentGpio_write(1); // configuration finished
print("Hello World\n");
return;
}

View File

@@ -0,0 +1,38 @@
# SPDX-FileCopyrightText: 2023 Efabless Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# SPDX-License-Identifier: Apache-2.0
from caravel_cocotb.caravel_interfaces import test_configure
from caravel_cocotb.caravel_interfaces import report_test
import cocotb
from caravel_cocotb.caravel_interfaces import UART
@cocotb.test()
@report_test
async def hello_world_uart(dut):
caravelEnv = await test_configure(dut,timeout_cycles=3346140)
cocotb.log.info(f"[TEST] Start uart test")
expected_msg = "Hello World"
uart = UART(caravelEnv)
# wait for start of sending
await caravelEnv.wait_mgmt_gpio(1)
# read the msg sent
msg = await uart.get_line()
if msg in expected_msg :
cocotb.log.info (f"[TEST] Pass recieve the full expected msg '{msg}'")
else:
cocotb.log.error (f"[TEST] recieved wrong msg from uart msg recieved:'{msg}' expected '{expected_msg}'")

View File

@@ -0,0 +1,24 @@
# SPDX-FileCopyrightText: 2023 Efabless Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# SPDX-License-Identifier: Apache-2.0
# Yalm file contain general design information that would mostly need to be updated in the first run only
Tests:
- {name: hello_world_uart, sim: RTL}