Services - tools - models - for embedded software development
Embecosm divider strip
Prev  Next

Chapter 4.  RSP Server Implementation Example

4.1. The OpenRISC 1000 Architectural Simulator, Or1ksim
4.1.1. The OpenRISC 1000 Architecture
4.1.2. The OpenRISC 1000 Debug Unit
4.1.3. The OpenRISC 1000 JTAG Interface
4.1.4. Application Binary Interface (ABI)
4.1.5. Or1ksim: the OpenRISC 1000 Architectural Simulator
4.2. OpenRISC 1000 GDB Architectural Specification
4.3. Overview of the RSP Server Implementation
4.3.1. External Code Interface
4.3.2. Global Data Structures
4.3.3. Top Level Behavior
4.4. The Serial Connection
4.4.1. Establishing the Server Listener Socket
4.4.2. Establishing the Client Connection
4.4.3. Communicating with the Client
4.5. The Packet Interface
4.5.1. Packet Representation
4.5.2. Getting Packets
4.5.3. Sending Packets
4.6. Convenience Functions
4.6.1. Convenience String Packet Output
4.6.2. Conversion Between Binary and Hexadecimal Characters
4.6.3. Conversion Between Binary and Hexadecimal Character Registers
4.6.4. Data "Unescaping"
4.6.5. Setting the Program Counter
4.7. High Level Protocol Implementation
4.7.1. Deprecated Packets
4.7.2. Unsupported Packets
4.7.3. Simple Packets
4.7.4. Reporting the Last Exception
4.7.5. Continuing
4.7.6. Reading and Writing All Registers
4.7.7. Reading and Writing Memory
4.7.8. Reading and Writing Individual Registers
4.7.9. Query Packets
4.7.10. Set Packets
4.7.11. Restart the Target
4.7.12. Stepping
4.7.13. v Packets
4.7.14. Binary Data Transfer
4.7.15. Matchpoint Handling

The examples used are based on the RSP server implementation for the OpenRISC 1000 architectural simulator, Or1ksim.

The target is "bare metal". There is no operating system infrastructure necessarily present. In this context, commands relating to threads or the file system are of no meaning and not implemented.

Embecosm divider strip