Page 2
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual REVISION LOG Date Change description 2015-11-10 First Release Updates for new release with lots of minor corrections and 2016-03-07 clarifications. Version C released with the following updates: ...
TCM-S 0.6.2 1.2. Intended users This manual is written for the software engineers using the ÅAC Sirius product suite. 1.3. Getting support If you encounter any problem using the breadboard or another ÅAC product please use the following address to get help: Email: support@aacmicrotec.com...
Issue date 2016-10-11 Sirius Breadboard User Manual 2. Equipment information The Sirius Breadboard is a prototyping platform designed to support the TCM-S , and the OBC-S products. The Breadboard layout is depicted in Figure 3-1. The development board supports both a debugger interface for developing software applications and a JTAG interface for upgrading the FPGA firmware.
204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 2.1. System Overview with peripherals Figure 2-1 depicts a System-on-Chip (SoC) overview including the related peripherals of the OBC-S and TCM-S products. The figure shows what parts are for which products and what parts are not yet implemented since the products are still under development.
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 3. Setup and operation 3.1. User prerequisites The following hardware and software is needed for the setup and operation of the Breadboard. PC computer 1 Gb free space for installation (minimum) ...
3.2. Connecting cables to the Sirius Breadboard Figure 3-1 – ÅAC Sirius Breadboard with connector numbering The Sirius Breadboard runs on a range of 4.5 to 16V DC. The instructions below refer to the connector numbering in Figure 3-1. ...
Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Option 2: Connect the Display port cable to connector 7 or 8 and to the 104510 Converter board. Connect your SpaceWire system to the converter board with the SpaceWire cable.
3.5. Deploying a Sirius application 3.5.1. Establish a debugger connection to the Breadboard The Sirius Breadboard is shipped with a debugger which connects to the PC via USB. To interface the Breadboard, the Open On-Chip Debugger (OpenOCD) software is used. A script called run_aac_debugger.sh is shipped with the toolchain package which starts an...
Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Figure 3-2 - Successful OpenOCD connection to the Breadboard 3.5.2. Setup a serial terminal to the device debug UART The device debug UART may be used as a debug interface for printf output etc.
Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual When gdb has opened successfully, connect to the hardware through the OpenOCD server using the gdb command target remote localhost:50001 To start an executable program in hardware, first specify it's name using the gdb command file.
2016-10-11 Sirius Breadboard User Manual 4. Software development Applications to be deployed on the Sirius Breadboard can either use a bare-metal approach or use the RTEMS OS. This corresponds to the two toolchain prefixes available: or1k-aac- elf-* or or1k-aac-rtems4.11-* Drivers for both are available in the BSP, see chapter 3.4 and the BSP README for more information.
204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5. RTEMS 5.1. Introduction This section presents the RTEMS drivers. The Block diagram representing driver functionality access via the RTEMS API is shown in Figure 5-1. Figure 5-1 - Functionality access via RTEMS API www.aacmicrotec.com...
204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.2. Watchdog 5.2.1. Description This section describes the driver as one utility for accessing the watchdog device. 5.2.2. RTEMS API This API represents the driver interface from a user application’s perspective for the RTEMS driver.
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.2.2.3. size_t write(…) Any data is accepted as a watchdog kick. Argument name Type Direction Description File descriptor received at open void * Character buffer to read data from...
Page 20
Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Default value of the watch dog is enabled. When debugged it must be set disabled otherwise the system restart occasionally. 5.2.3.1. RTEMS The RTEMS driver must be opened before it can access the watchdog device. Once opened, all provided operations can be used as described in the RTEMS API defined in subchapter 5.2.2.
204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Inclusion of <errno.h> is required for retrieving error values on failures. Inclusion of <bsp/wdt_rtems.h> is required for accessing watchdog device name RTEMS_WATCHDOG_DEVICE_NAME. CONFIGURE_APPLICATION_NEEDS_WATCHDOG_DRIVER must be defined for using the watchdog driver.
Page 22
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual errno values EALREADY Device already opened 5.3.2.2. int close(…) Closes access to the device. Argument name Type Direction Description File descriptor received at open Return value Description Device closed successfully 5.3.2.3.
Page 23
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual ERRMAN_SET_EDAC_MULTI_ERRCNT_IOCTL Sets the EDAC multiple error count register ERRMAN_SET_CPU_PARITY_ERRCNT_IOCTL Sets the CPU Parity error count register ERRMAN_SET_POWER_LOSS_ENABLE_IOCTL Sets the power loss enable state Return value Description Command executed...
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual ERRMAN_WDTFLG A previous Watch Dog Timer Reset has been detected Clear flag by write a ‘1’ ERRMAN_RFLG A previous Manual Reset has been detected Clear flag by write a ‘1’...
Page 25
Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Figure 5-3 - RTEMS driver usage description Interrupt message queue The error manager RTEMS driver exposes a message queue service which can be subscribed to. The name of the queue is “’E’, ‘M’, ‘G’, ‘R’”.
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.3.3.2. RTEMS application example In order to use the error manager driver on RTEMS environment, the following code structure is suggested to be used: #include <bsp.h> #include <fcntl.h>...
204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.4. SCET 5.4.1. Description This section describes the driver as a utility for accessing the SCET device. 5.4.2. RTEMS API This API represents the driver interface from a user application’s perspective for the RTEMS driver.
Page 28
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.4.2.3. int ioctl(…) Ioctl allows for disabling/enabling of the SCET and setting of the timeout. Argument name Type Direction Description File descriptor received at open Command to send Value to write or a pointer to a buffer where data will be written.
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual SCET_SET_GP_TRIGGER_LEVEL_IOCTL uint32_t in/out Pointer input argument selects which GP trigger. Return value is the current value of that trigger. 0 = trigger activates on a rising edge...
Page 30
Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Figure 5-4 - RTEMS driver usage description 5.4.3.1.1. Time handling Getting the current SCET time in RTEMS can be done in two ways: 1. Using read call, reading 6 bytes.
Page 31
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual ‘S’, ‘G’, ‘T’, ‘0’ handles messages sent from the general purpose trigger 0. Event name Description TRIGGER0 Trigger 0 was triggered ‘S’, ‘G’, T’, ‘1’ handles messages sent from the general purpose trigger 1.
Page 32
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.4.3.3. RTEMS application example In order to use the scet driver on RTEMS environment, the following code structure is suggested to be used: #include <bsp.h> #include <fcntl.h>...
Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.5. UART 5.5.1. Description This driver is using the de facto standard interface for a 16550D UART given in [RD5] and as such has an 8-bit interface, but has been expanded to provide a faster and more delay- tolerant implementation.
Page 34
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Return value Description A file descriptor for the device on success See errno values errno values ENODEV Device does not exist EALREADY Device is already open Device name...
Page 35
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual EPERM Device not open EINVAL Invalid number of characters to be read 5.5.2.4. Function ssize_t write(…) Write data to the UART. The write call is blocking until all data have been transmitted.
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual UART_IOCTL_MODE_SELECT uint32_t Set the mode of the interface. Possible values: UART_RTEMS_MODE_RS422 (default) UART_RTEMS_MODE_RS485 UART_RTEMS_MODE_LOOPBACK (TX connected to RX internally) UART_IOCTL_RX_FLUSH uint32_t Flushes the RX software FIFO UART_IOCTL_SET_PARITY uint32_t Set parity.
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.5.3.1. RTEMS application example In order to use the uart driver in the RTEMS environment, the following code structure is suggested to be used: #include <bsp.h> #include <fcntl.h>...
Page 38
Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual The driver functionality is accessed through the RTEMS POSIX API for ease of use. In case of a failure on a function call, the errno value is set for determining the cause.
Page 39
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Return value Description Fildes A file descriptor for the device on success See errno values errno values EEXISTS Device already exists EALREADY Device is already open EINVAL Invalid options 5.6.2.4.
Page 40
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Return value Description >=0 Number of bytes that were read. See errno values errno values EINVAL Invalid options 5.6.2.6. Function int ioctl(...) Input/output control for UART32. Argument name...
204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.6.3. Usage description The following #define needs to be set by the user application to be able to use the UART32: CONFIGURE_APPLICATION_NEEDS_UART32_DRIVER 5.6.3.1. RTEMS application example In order to use the UART32 driver on RTEMS environment, the following code structure is suggested to be used: #include <bsp.h>...
204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.7. Mass memory 5.7.1. Description This section describes the mass memory driver’s design and usability. 5.7.2. RTEMS API This API represents the driver interface from a user application’s perspective for the RTEMS driver.
Page 43
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Return value Description Device closed successfully see errno values errno values The file descriptor fd is not an EBADF open file descriptor 5.7.2.3. size_t lseek(…) Sets page offset for read/ write operations.
Page 44
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Return value Description >0 Number of bytes that were read. see errno values errno values The file descriptor fd is not an open file EBADF descriptor Page offset set in lseek is out of range...
Page 45
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Command Type Direction Description MASSMEM_IO_BAD_BLOCK_CHECK uint32_t Block number. Return value Description Block is OK. Bad block 5.7.2.6.2. Reset mass memory device Command Type Direction Description MASSMEM_IO_RESET Return value...
Page 46
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Return value Description Always 5.7.2.6.7. Erase block Command Type Direction Description MASSMEM_IO_ERASE_BLOCK uint32_t Block number Return value Description Always 5.7.2.6.8. Read spare area Reads the spare area with given data.
204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.7.3. Usage 5.7.3.1. RTEMS 5.7.3.1.1. Overview The RTEMS driver accesses the mass memory by the reference a page number. There are MASSMEM_BLOCKS blocks starting from block number 0 and MASSMEM_PAGES_PER_BLOCK pages within each block starting from page 0.
204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.8. Spacewire 5.8.1. Description This section describes the SpaceWire driver’s design and usability. 5.8.2. RTEMS API This API represents the driver interface from a user application’s perspective for the RTEMS driver.
Page 50
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Return value Description Device name deregistered successfully see errno values errno values The file descriptor fd is not an open file EBADF descriptor 5.8.2.3. size_t read(…) Receives a packet.
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual errno values The file descriptor fd is not an open file EBADF descriptor Packet size is 0 or larger than EINVAL SPWN_MAX_PACKET_SIZE. 5.8.2.5. int ioctl(…) Additional supported operations via POSIX Input/Output Control API.
Page 52
Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Only one logical address can be registered at a time yet multiple logical addresses can be used at the same time within an application. Logical addresses between 0 – 31 and 255 are reserved by the ESA’s ECSS SpaceWire standard and cannot be registered to.
Page 53
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.8.3.2. RTEMS application example In order to use the driver in RTEMS environment, the following code structure is suggested to be used: #include <bsp.h> #include <fcntl.h> #include <unistd.h>...
204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual CONFIGURE_EXECUTIVE_RAM_SIZE must also be defined for objects needed by the driver. 5.8.4. Limitations Currently, default transmission/reception bit rate is set to 50 MBAUD and cannot be altered during operation. This functionality is planned to be added in a future release.
Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.9.2. RTEMS API This API represents the driver interface of the module from an RTEMS user application's perspective. The driver functionality is accessed through the RTEMS POSIX API for ease of use. In case of a failure on a function call, the errno value is set for determining the cause.
Page 56
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Argument name Type Direction Description File descriptor received at open. void* Pointer to character buffer to put the read data count size_t Number of bytes to read, must be set to 1.
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual GPIO_IOCTL_SET_DIRECTION uint32_t Set input/output direction of the pin. '0' output mode '1' input mode GPIO_IOCTL_GET_FALL_EDGE_DETECTION uint32_t Get falling edge detection status of the pin. '0' detection disabled...
Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.10. CCSDS 5.10.1. Description This section describes the driver as a utility for accessing the CCSDS IP. On the telemetry, the frames are encoded with Reed Solomon encoding that conforms to the CCSDS standard with a (255-223) RS encoder implementation and an interleaving depth of 5.
Page 60
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Element Size (in bits) Description transfer_frame_version_no The transfer frame version number Scid The SCID Vcid The virtual channel id of the TM frame vcf_flag The OCF-flag Mcfc...
Page 61
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.10.2.2. Datatype struct tc_frame_t This datatype is a struct representing a telecommand transfer frame. The elements are described in the table below: Element Size (in bits) Description...
Page 62
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual tm_conv_bypassed uint8_t Bypassing of the TM convolutional encoder 0 - No bypass 1 - Bypass tm_pseudo_rand_bypassed uint8_t Bypassing of the TM pseudo randomizer encoder 0 - No bypass...
Page 63
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.10.2.7. int open(…) Opens the devices provided by the CCSDS RTEMS driver. The device can only be opened once at a time. Argument name Type Direction Description...
Page 64
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Return value Description ≥0 number of bytes that were written. see errno values errno values EINVAL Wrong arguments A physical access on the device failed 5.10.2.10. size_t read(…) To read a Telecommand Transfer frame a read-operation on device “/dev/ccsds-tc”...
Page 65
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Command table Device Parameter type Description CCSDS_SET_TM_CONFIG /dev/ccsds-tm tm_config_t Sets a configuration of the TM path. See 5.10.2.3 CCSDS_GET_TM_CONFIG /dev/ccsds-tm tm_config_t * Returns the configuration of the TM path. See 5.10.2.3...
204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.10.3. Usage description 5.10.3.1. Send Telemetry Open the device “/dev/ccsds-tm”, “/dev/ccsds-tc” and “/dev/ccsds”. Set up the TM path by ioctl-call CCSDS_SET_TM_CONFIG on device “/dev/ccsds-tm” or ioctl CCSDS_INIT on device “/dev/ccsds”...
204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.11. ADC 5.11.1. Description This section describes the driver for accessing the ADC device when reading the house- keeping (HK) data. The following ADC channels contain housekeeping information: Parameter...
Page 68
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual ADC_IOCTL_SPS_503_8 SPS 503.8 ADC_IOCTL_SPS_381 SPS 381 ADC_IOCTL_SPS_200_3 SPS 200.8 ADC_IOCTL_SPS_100_5 SPS 100.5 ADC_IOCTL_SPS_59_52 SPS 59.52 ADC_IOCTL_SPS_49_68 SPS 49.68 ADC_IOCTL_SPS_20_01 SPS 20.01 ADC_IOCTL_SPS_16_63 SPS 16.63 ADC_IOCTL_SPS_10 SPS 10...
Page 69
204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual EINVAL Invalid options 5.11.2.4. Function ssize_t read(…) This is a blocking call to read data from the ADC. Note! The size of the given buffer must be a multiple of 32 bit as this is the minimum return element from a read, see bit definition table below.
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual ADC_GET_CLOCK_DIVISOR uint32_t Set the clock divisor of the clock used for communication with the ADC chip. ADC_ENABLE_CHANNEL uint32_t Enable specified channel number to be included when sampling. Minimum 0 and maximum 15.
Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.12.1. Description This driver software for the SPI RAM IP, handles the initialization, configuration and access of the NVRAM. The NVRAM is divided into a system memory area and a user memory area. The system memory start at SPI RAM address 0x100 and the user memory start at SPI RAM address 0x200.
Page 73
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Return value Description Device closed successfully See errno values errno values EINVAL Invalid options 5.12.2.4. Function ssize_t read(...) Read data from the SPI RAM. The call block until all data has been received from the SPI RAM.
Page 74
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual offset void* SPI RAM read/write byte offset. Must be a multiple of 4. whence SEEK_SET and SEEK_CUR are supported. Return value Description >=0 Byte offset See errno values...
204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 5.12.3. Usage description The following #define needs to be set by the user application to be able to use the SPI RAM: CONFIGURE_APPLICATION_NEEDS_SPI_RAM_DRIVER 5.12.3.1. RTEMS application example In order to use the SPI RAM driver on RTEMS environment, the following code structure is suggested to be used: #include <bsp.h>...
204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 6. Spacewire router In both OBC-S and TCM-S products, a smaller router is integrated onto their relative SoCs. The routers all use path addressing (see [RD2]) and given the topology illustrated in Figure 6-1, the routing addressing can be easily calculated.
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 7. TCM-S 7.1. Description The TCM-S handles receiving of Telecommands (TCs) and Telemetry (TM) as well as Spacewire communication using the RMAP protocol. TC, received from ground, can be of two command types; a pulse command or a Telecommand.
Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 7.3. Spacewire RMAP According to [RD3], a 40-bits address consisting of an 8-bit Extended Address field and a 32-bit Address field is used in RMAP. This has been utilized in the TCM-S...
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Table 7-5: TMStatus data Byte Type Description 0x00 – No Error UINT8 0x01 – FIFO error. 0x00 – No transfer in progress. UINT8 0x00 – Transfer in progress.
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 7.4.5. TMMCFCControl Controls the Master Channel Frame Counter generation for transfer frames. Table 7-9: TMMFControl data Byte Type Description 0x00 – Disable UINT8 0x01 – Enable (Default) 7.4.6.
Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 7.4.10. TMBRSet Configures the telemetry clock frequency. The telemetry clock is fed to the radio. The frequency of the telemetry clock is the system clock (50 MHz) divided by the divisor. E.g. if the divisor value is set to 25, the telemetry clock frequency is 2 MHz Note! If the convolutional encoding is disabled, as defined in subchapter 7.4.9, the...
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Bit 15:12 – Unused Bit 11:0 – Line 11:0 UINT8 Number of accepted CPDU commands. Wraps after 0x0F. Derandomizer setting 0x00 – Disabled. UINT8 0x01 – Enabled.
204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual shall be added to the seconds counter. SCETSubSeconds when reading. When writing a value to SCETSubSeconds, this must be a 2’s complementary value UINT16 that shall be added to the subseconds counter.
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 0 - nn Array of UINT8 Data 7.4.21. MMStatus Reads mass memory status. Table 7-25: MMStatus data Byte Type Description Chip 3 status Bit 7 - WP# (write protect)
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 7.4.24. MMPartitionConfig The partition configuration of the specified partition is read by this command. Table 7-28: MMPartitionConfig data Byte Type Description Size in bytes. Must be in multiples of mass memory block size...
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Table 7.31 TMError data Byte Type Description UINT8 Counts the number of checksum errors. Wraps at 0xFF. 7.4.29. TCError Contains status of the TC path. Table 7.32 TCError data...
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Table 7-34: Telecommand Acceptance Report – Failure (1,2) Packet ID Packet Sequence Control Code UINT8. UINT16 UINT16 0 – Illegal APID 7.7.2. PUS-2 Device Command Distribution Service...
Issue date 2016-10-11 Sirius Breadboard User Manual 8. System-on-Chip definitions The ÅAC Sirius products include two boards built around the OR1200 fault tolerant processor, the OBC-S and the TCM-S . Below are the peripherals, memory sections and interrupts defined for the SoC for these two boards. Some of these might not be equipped in this development release.
204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 8.2. Interrupt sources The following interrupts are available to the processor: Table 8-2 - Sirius interrupt assignment Interrupt no. Function Description Reserved Internal use UART Debug UART interrupt signal...
Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 8.4. Boot images and boot procedure 8.4.1. Description The bootrom is a small piece of software built into a read-only memory inside the System- on-Chip. Its main function is to load a software image from the system flash to RAM and start it by jumping to the reset vector (0x100).
0 takes precedence. 8.7. SoC information map The information included in the SoC info block for the Sirius products have the following contents in Table 8-6. This information must be used from gdb prompt and can be used as a control of which SoC version that is flashed on the board.
Page 93
Issue date 2016-10-11 Sirius Breadboard User Manual x/3xw 0xC1000000 and you will get the below information presented. Table 8-6 Sirius SoC info Base address Function Description number When building the SoC, a Unix timestamp is taken and put into the TIME_STAMP system.
2016-10-11 Sirius Breadboard User Manual 9. Connector interfaces Figure 9-1 - Sirius ports 9.1. RESET, Reset pushbutton The reset pushbutton resets the SoC using the dedicated devrst pin of the FPGA. In normal development this can be used as an alternative to the soft reset described in 5.3. Note: This button must not be used during an update of the SoC (FPGA).
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Pin 8 RTL-JTAG-TDO Test Data Out, data shifted out of the device Pin 9 Ground Pin 10 RTL-JTAG-TCK Test Clock 9.3. DEBUG-SW The following pins are available on the ST60-18P, connector. See Table 9-2.
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual Pin 7 SPW1_SIN_LVDS_N SpaceWire strobe in negative, pair with p2 Pin 8 SPW1_SOUT_LVDS_P SpaceWire strobe out positive, pair with p4 Pin 9 SPW1_DOUT_LVDS_P SpaceWire data out positive, pair with p5 9.5.
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual synchronization Pin 24 PPS_INPUT_RS422_P Pin 25 Board ground 9.8. COM02_RS4XX, 3xRS422/485 The following pins are available on the nanoD15 socket connector, see Table 9-7 Table 9-7 COM02_RS4XX pinouts...
204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 9.11. CCSDS LVDS, RS422, X-BAND TRX (TCM-S) The following pins are available on the nano-D25, socket connector, see Table 9-9 Table 9-10 X-BAND TRX pin-outs Pin # Signal name...
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 9.13. UMBI – Baseband Umbilical (TCM-S) The following pins are available on the nano-D15 socket connector, see Table 9-10 Table 9-11 UMBI pin-outs Pin # Signal name...
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 9.14. Pulse Command Outputs The following pins are available on the nano-D25, socket connector, see Table 9-10 Table 9-12 Pulse command pin-outs Pin # Signal name Description...
Please note that you either need to launch FPExpress with super user rights or change the user rights to the usb node. If the programming was successful one of the last commands should be: programmer: Chain programming PASSED. The Sirius FPGA image is now updated www.aacmicrotec.com Page 103 of 106...
TCM-S and OBC-S boards. Figure 11-1 - The Sirius board mechanical dimensions 12. Environmental information The Sirius Breadboard is an engineering model and as such it is only intended for office usage. Table 12-1 - Environmental temperature ranges Environment Range Operating temperature EM 0-40 ºC...
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual 13. Glossary Analog Digital Converter APID Application Process ID Board Support Package CCSDS The Consultative Committee for Space Data Systems EDAC Error Detection and Correction Engineering model...
Page 106
Document number 204911 Version Rev. K Issue date 2016-10-11 Sirius Breadboard User Manual www.aacmicrotec.com Page 106 of 106...
Need help?
Do you have a question about the Sirius and is the answer not in the manual?
Questions and answers