SWComponent
UART
Contains the logic for UART handling
SWComponent
Contains the logic for UART handling
Required | |
---|---|
SILs | QM |
Base | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Name | UART | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Type | SWComponent | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Contains the logic for UART handling |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User-ID | SWComponent_35 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
UID | _EYkm4OZhEeyZ2OzYlvU4PA | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
configuration | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Filename | SWC_UART | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Generated | true | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Sub-Folder | false | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
containment | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Software units (3)All software units contained in this SWC
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Ingoing Trigger Ports (1)Trigger IN ports attached to this SWC
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Ingoing Data Ports (2)Data IN ports attached to this SWC
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Outgoing Data Ports (1)Data OUT ports attached to this SWC
|
Hazard Scenarios for associated Hazardous Events.
Hazard Scenario | Parent | Hazard Events |
---|---|---|
This would be very sad. |
Hazardous Events for associated Safety Goals.
Hazardous Event | Parent | Probability | Controllability | Effect | SIL | Safety-Goals |
---|---|---|---|---|---|---|
The user might think µRTE is hard to use. |
QM | |||||
The customer might not see the full spectrum of features µRTE comes with. |
QM |
Safety Goals linking to the Requirements.
Safety Goal | Parent | Function Type | SIL derived | SIL manual | SIL effective | Safe State | Safety Requirements |
---|---|---|---|---|---|---|---|
An small demo model with the most important features shall show the most important features of µRTE. |
System_Function | QM | derived | QM | Show slides |
|
Requirements mapped to software units in this SWC.
(Safety)Requirement | Parent | User-ID | Author | Creation Date | Start Date | Deadline | Expense | Responsibe | Category | Type | Status | Function Type | SIL derived | SIL manual | SIL effective | Tests | Technical Functions | Software | Hardware | Signals | Global variables | Activation events | Use-Cases | User-Stories | Refining | Conflicting | refined by | conflicted by |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
uRTE allows the definition of multiple system-states where each state has an own data-flow. |
SafetyRequirement_98 | Wed Jun 08 17:52:52 CEST 2022 | 0.0 | product | functional | implemented | System_Function | QM | derived | QM | ||||||||||||||||||
Show how protection sets can be used to grant access to hardware. |
SafetyRequirement_115 | Fri Jun 10 14:24:52 CEST 2022 | 0.0 | product | functional | implemented | System_Function | QM | derived | QM | ||||||||||||||||||
Demonstrate the use of scalers and validators. |
SafetyRequirement_111 | Thu Jun 09 20:52:41 CEST 2022 | 0.0 | product | functional | approved | System_Function | QM | derived | QM | ||||||||||||||||||
When the button is pressed, the system-state shall change from Blink into UART mode. |
Requirement_95 | Thomas Barth | Wed Jun 08 17:56:19 CEST 2022 | 0.0 | Thomas Barth | product | functional | implemented | - | - | - | - |
|
Technical functions mapped to software functions in this SWC.
Function | LFB | Software | Hardware | Technical Functions | sub Technical Functions | Requirements | sub Requirements |
---|---|---|---|---|---|---|---|
If the button is pressed, UART messages indicating the press duration are sent. |
Tasks executing software units in this SWC
Task | Core | SIL | Priority | Software | States | Signals | Init | Hardware | OutputSections | Own TimeBase | Stack |
---|---|---|---|---|---|---|---|---|---|---|---|
Task responsible for sending out UART protocolls |
Arm® Cortex®-M4 | SIL_1 | 5 | - | false | .rtos.task.UART |
Signals used by the runnables in this SWC
Signal | Type | Storage | Runnables OUT | Runnables IN | Tasks | SystemStates | Requirements | miminum Age | maximum Age | Checksum | Force Sync | Inline | ISR API | effective inline | SIL req | SIL ach | Initial value (D) | Pointer access (D) | Datatype (D) | Alt-In (D) | Alt-Out (D) | In-Driver (D) | Out-Driver (D) | OnData (D) | OnError (D) | OnTrigger (E) |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Hardware Out interface for UART. |
Data | local in |
0 | 0 | false | false | false | false | false | QM | QM | true | undefined | - | - | |||||||||||
A representation of the current button state |
Data | local in |
0 | 105 | false | false | false | false | false | SIL_1 | QM | false | false | uRTE_boolean_t | - |
|
- | |||||||||
contains the number of seconds, the button has been pressed |
Data | global in Button |
0 | 202 | true | false | false | false | false | QM | QM | 0 | false | button_cnt_t | - | - | ||||||||||
Fired whenever the button is pressed (but not if it is released) |
Event | local in |
0 | 0 | false | false | false | false | false | QM | QM | - | - | - | - | - | - | - | - | - |
|
Runnables in other SWCs triggering runnables in this SWC.
Unit | Parent | Function calls | Technical Functions | Requirements | Type | Tasks | WCET | Stack | ROM | Globals | ProtectionSets | SIL req | SIL ach | sub Technical Functions | sub Requirements) | Has a return value | SystemStates | Ingoing Trigger Ports | Outgoing Trigger Ports | Ingoing Data Ports | Outgoing Data Ports |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Acquires the button state periodically and provides button signals |
Button | Runnable | 0 | 0 | 0 | QM | QM | false |
|
|
|
|
Runnables in other SWCs providing data for the runnables in this SWC.
Unit | Parent | Function calls | Technical Functions | Requirements | Type | Tasks | WCET | Stack | ROM | Globals | ProtectionSets | SIL req | SIL ach | sub Technical Functions | sub Requirements) | Has a return value | SystemStates | Ingoing Trigger Ports | Outgoing Trigger Ports | Ingoing Data Ports | Outgoing Data Ports |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Acquires the button state periodically and provides button signals |
Button | Runnable | 0 | 0 | 0 | QM | QM | false |
|
|
|
|
Trigger IN ports attached to the runnables in this SWC.
Port | Events | Signal event source | Container | Task | Guard | Order |
---|---|---|---|---|---|---|
Runnable_run_UART_WakeUP If an event comes in, the runnable shall switch the state to UART to start the periodic sending |
|
run_UART_wakeUp | UART | 0 | ||
Runnable_run_UART_send_TPortIN_1 |
|
run_UART_send | UART | 0 |
Cores executing the software units of this SWC and hardware references by the drivers.
Component | Type | Start | End | SIL req | SIL ach | Sub-Components | Technical Functions | sub Technical Functions | Requirements | sub Requirements |
---|---|---|---|---|---|---|---|---|---|---|
Arm® 32-bit Cortex®-M4 CPU with FPU, Adaptive real-time accelerator (ART Accelerator) allowing 0-wait state execution from Flash memory, frequency up to 180 MHz, MPU, 225 DMIPS/1.25 DMIPS/MHz (Dhrystone 2.1), and DSP instructions |
Core | - | - | - | QM | |||||
UART module connected to pin TX/RX PA2/PA3 at 115200 8N1 |
Periphery | USART2_BASE | USART3_BASE - 1 | - | QM |
Tests derived from referencing requirements.
Test | User-ID | Group | Priority | Status | Procedure and Input-Data | Expected Results | SIL | Requirements | Technical-Functions | Software-Units | Signals | Global variables | Activation-Events | Hardware-Components |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Tests the UART functionality at the system level |
Test_134 | 0 | approved | Regular power-on with a terminal connected to UART. The Button is pressed for 10 seconds. | The string '--- UART WakeUp ----' is send whenever the button is pressed, followed by 'Button pressed for %d seconds.' messages, where '%d' represents the integer number of seconds the button already has been pressed. |