1.. zephyr:board:: gr716a_mini
2
3Overview
4********
5
6The GR716-MINI development board provides:
7
8* GR716 microcontroller
9* SPI Flash PROM, 32 MiB
10* SRAM, 2 MiB
11* FTDI USB interface for UART debug link (AHBUART) and application UART
12  (APBUART).
13* 4x MMCX connectors (2 ADC, 2 DAC)
14* Miniature 80 pin mezzanine connector (bottom side)
15
16Hardware
17********
18
19Console Output
20==============
21
22By default, the kernel is configured to send console output to the
23first APBUART peripheral (apbuart0). The UART debug forwarding setting,
24if enabled in GRMON, is preserved.
25
26Programming and Debugging
27*************************
28
29Building
30========
31
32Applications for the ``gr716a_mini`` board configuration can be built
33as usual (see :ref:`build_an_application`).
34In order to build the application for ``gr716a_mini``, set the ``BOARD``
35variable to ``gr716a_mini``.
36
37The application is linked to the on-chip tightly coupled memory by
38default.
39
40Running on hardware
41===================
42
43Connect with GRMON, then load and run the application.
44
45.. code-block:: console
46
47    $ grmon -u -cginit 0x00010000 -uart /dev/ttyUSB0
48      GRMON debug monitor v3.2.8
49
50      Copyright (C) 2020 Cobham Gaisler - All rights reserved.
51      For latest updates, go to http://www.gaisler.com/
52      Comments or bug-reports to support@gaisler.com
53
54      Device ID:           0x716
55      GRLIB build version: 4204
56      Detected system:     GR716
57      Detected frequency:  20.0 MHz
58
59      Component                            Vendor
60      AHB-to-AHB Bridge                    Cobham Gaisler
61      MIL-STD-1553B Interface              Cobham Gaisler
62      GRSPW2 SpaceWire Serial Link         Cobham Gaisler
63      SPI to AHB Bridge                    Cobham Gaisler
64      I2C to AHB Bridge                    Cobham Gaisler
65      CAN Controller with DMA              Cobham Gaisler
66      CAN Controller with DMA              Cobham Gaisler
67      AHB Debug UART                       Cobham Gaisler
68      AHB-to-AHB Bridge                    Cobham Gaisler
69      PacketWire Receiver with DMA         Cobham Gaisler
70      PacketWire Transmitter with DMA      Cobham Gaisler
71      GRDMAC DMA Controller                Cobham Gaisler
72      GRDMAC DMA Controller                Cobham Gaisler
73      GRDMAC DMA Controller                Cobham Gaisler
74      GRDMAC DMA Controller                Cobham Gaisler
75      Dual-port SPI Slave                  Cobham Gaisler
76      LEON3FT SPARC V8 Processor           Cobham Gaisler
77      AHB-to-AHB Bridge                    Cobham Gaisler
78      AHB Memory Scrubber                  Cobham Gaisler
79      AHB-to-AHB Bridge                    Cobham Gaisler
80      AHB Debug UART                       Cobham Gaisler
81      Dual-port AHB(/CPU) On-Chip RAM      Cobham Gaisler
82      Dual-port AHB(/CPU) On-Chip RAM      Cobham Gaisler
83      Generic AHB ROM                      Cobham Gaisler
84      Memory controller with EDAC          Cobham Gaisler
85      SPI Memory Controller                Cobham Gaisler
86      SPI Memory Controller                Cobham Gaisler
87      AHB/APB Bridge                       Cobham Gaisler
88      AHB/APB Bridge                       Cobham Gaisler
89      AHB/APB Bridge                       Cobham Gaisler
90      AHB/APB Bridge                       Cobham Gaisler
91      Memory controller with EDAC          Cobham Gaisler
92      LEON3 Debug Support Unit             Cobham Gaisler
93      AHB/APB Bridge                       Cobham Gaisler
94      AMBA Trace Buffer                    Cobham Gaisler
95      Multi-processor Interrupt Ctrl.      Cobham Gaisler
96      Modular Timer Unit                   Cobham Gaisler
97      Modular Timer Unit                   Cobham Gaisler
98      GR716 AMBA Protection unit           Cobham Gaisler
99      Clock gating unit                    Cobham Gaisler
100      Clock gating unit                    Cobham Gaisler
101      General Purpose Register             Cobham Gaisler
102      LEON3 Statistics Unit                Cobham Gaisler
103      AHB Status Register                  Cobham Gaisler
104      CCSDS TDP / SpaceWire I/F            Cobham Gaisler
105      General Purpose Register Bank        Cobham Gaisler
106      General Purpose Register             Cobham Gaisler
107      GR716 AMBA Protection unit           Cobham Gaisler
108      GR716 Bandgap                        Cobham Gaisler
109      GR716 Brownout detector              Cobham Gaisler
110      GR716 Phase-locked loop              Cobham Gaisler
111      Generic UART                         Cobham Gaisler
112      Generic UART                         Cobham Gaisler
113      Generic UART                         Cobham Gaisler
114      Generic UART                         Cobham Gaisler
115      Generic UART                         Cobham Gaisler
116      Generic UART                         Cobham Gaisler
117      AHB Status Register                  Cobham Gaisler
118      ADC / DAC Interface                  Cobham Gaisler
119      SPI Controller                       Cobham Gaisler
120      SPI Controller                       Cobham Gaisler
121      PWM generator                        Cobham Gaisler
122      General Purpose I/O port             Cobham Gaisler
123      General Purpose I/O port             Cobham Gaisler
124      AMBA Wrapper for OC I2C-master       Cobham Gaisler
125      AMBA Wrapper for OC I2C-master       Cobham Gaisler
126      GR716 Analog-to-Digital Conv         Cobham Gaisler
127      GR716 Analog-to-Digital Conv         Cobham Gaisler
128      GR716 Analog-to-Digital Conv         Cobham Gaisler
129      GR716 Analog-to-Digital Conv         Cobham Gaisler
130      GR716 Analog-to-Digital Conv         Cobham Gaisler
131      GR716 Analog-to-Digital Conv         Cobham Gaisler
132      GR716 Analog-to-Digital Conv         Cobham Gaisler
133      GR716 Analog-to-Digital Conv         Cobham Gaisler
134      GR716 Digital-to-Analog Conv         Cobham Gaisler
135      GR716 Digital-to-Analog Conv         Cobham Gaisler
136      GR716 Digital-to-Analog Conv         Cobham Gaisler
137      GR716 Digital-to-Analog Conv         Cobham Gaisler
138      I2C Slave                            Cobham Gaisler
139      I2C Slave                            Cobham Gaisler
140      PWM generator                        Cobham Gaisler
141      LEON3 Statistics Unit                Cobham Gaisler
142      General Purpose Register             Cobham Gaisler
143
144      Use command 'info sys' to print a detailed report of attached cores
145
146    grmon3> load zephyr/zephyr.elf
147          31000000 text              16.2kB /  16.2kB   [===============>] 100%
148          300040A8 initlevel           40B              [===============>] 100%
149          300040D0 rodata             484B              [===============>] 100%
150          300042B4 datas               20B              [===============>] 100%
151          300042C8 sw_isr_table       256B              [===============>] 100%
152          300043C8 devices             36B              [===============>] 100%
153      Total size: 16.98kB (1.91Mbit/s)
154      Entry point 0x31000000
155      Image zephyr/zephyr.elf loaded
156
157    grmon3> run
158    *** Booting Zephyr OS build zephyr-v2.4.0-788-gc82a8736a65e  ***
159    Hello World! gr716a_mini
160
161
162Running in simulation
163=====================
164
165The same application binary can be simulated with the TSIM3 LEON3 simulator.
166
167.. code-block:: console
168
169    $ tsim-leon3 -freq 20 -gr716
170
171     TSIM3 LEON3 SPARC simulator, version v3.0.2
172
173     Copyright (C) 2020, Cobham Gaisler - all rights reserved.
174     For latest updates, go to https://www.gaisler.com/
175     Comments or bug-reports to support@gaisler.com
176
177    Number of CPUs: 1
178    register windows: 31
179    system frequency: 20.000 MHz
180    using 64-bit time
181    Allocated 128 KiB local instruction RAM memory at 0x31000000
182    Allocated 64 KiB local data RAM memory at 0x30000000
183    Allocated 4096 KiB SRAM memory, in 1 bank at 0x40000000
184    Allocated 2048 KiB ROM memory at 0x01000000
185    Allocated 16384 KiB SPIM ROM memory at 0x02000000
186    Allocated 16384 KiB SPIM ROM memory at 0x04000000
187
188    tsim> load zephyr/zephyr.elf
189      section: text, addr: 0x31000000, size 16956 bytes
190      section: initlevel, addr: 0x30000000, size 40 bytes
191      section: rodata, addr: 0x30000028, size 484 bytes
192      section: datas, addr: 0x3000020c, size 20 bytes
193      section: sw_isr_table, addr: 0x30000220, size 256 bytes
194      section: devices, addr: 0x30000320, size 36 bytes
195      Read 438 symbols
196    tsim> run
197      Initializing and starting from 0x31000000
198    *** Booting Zephyr OS build zephyr-v2.4.0-788-gc82a8736a65e  ***
199    Hello World! gr716a_mini
200
201
202References
203**********
204* `GR716 Evaluation and Development Boards <https://www.gaisler.com/index.php/products/boards/gr716-boards>`_
205* `TSIM3 LEON3 simulator <https://www.gaisler.com/index.php/products/simulators/tsim3/tsim3-leon3>`_
206* `GRMON3 debug monitor <https://www.gaisler.com/index.php/products/debug-tools/grmon3>`_
207