These are the steps to flash NuttX RTOS binary into STM32G0B1 chip:

$ JLinkExe -if swd
SEGGER J-Link Commander V7.92c (Compiled Aug 30 2023 14:58:04)
DLL version V7.92c, compiled Aug 30 2023 14:57:42

Connecting to J-Link via USB...O.K.
Firmware: J-Link ARM V8 compiled Nov 28 2014 13:44:46
Hardware version: V8.00
J-Link uptime (since boot): N/A (Not supported by this model)
S/N: 268006167
License(s): FlashBP, GDB
OEM: SEGGER-EDU
VTref=2.730V

Type "connect" to establish a target connection, '?' for help

J-Link>con
Please specify device / core. <Default>: STM32G0B1VC
Type '?' for selection dialog
Device>
Specify target interface speed [kHz]. <Default>: 4000 kHz
Speed>
Device "STM32G0B1VC" selected.
Connecting to target via SWD
InitTarget() start
SWD selected. Executing JTAG -> SWD switching sequence.
DAP initialized successfully.
InitTarget() end - Took 29.2ms
Found SW-DP with ID 0x0BC11477
DPv0 detected
CoreSight SoC-400 or earlier
Scanning AP map to find all available APs
AP[1]: Stopped AP scan as end of AP map has been reached
AP[0]: AHB-AP (IDR: 0x04770031)
Iterating through AP map to find AHB-AP to use
AP[0]: Core found
AP[0]: AHB-AP ROM base: 0xF0000000
CPUID register: 0x410CC601. Implementer code: 0x41 (ARM)
Found Cortex-M0 r0p1, Little endian.
FPUnit: 4 code (BP) slots and 0 literal slots
CoreSight components:
ROMTbl[0] @ F0000000
[0][0]: E00FF000 CID B105100D PID 000BB4C0 ROM Table
ROMTbl[1] @ E00FF000
[1][0]: E000E000 CID B105E00D PID 000BB008 SCS
[1][1]: E0001000 CID B105E00D PID 000BB00A DWT
[1][2]: E0002000 CID B105E00D PID 000BB00B FPB
Memory zones:
  Zone: "Default" Description: Default access mode
Cortex-M0 identified.

J-Link>erase
No address range specified, 'Erase Chip' will be executed
'erase': Performing implicit reset & halt of MCU.
Reset: Halt core after reset via DEMCR.VC_CORERESET.
Reset: Reset device via AIRCR.SYSRESETREQ.
Erasing device...
J-Link: Flash download: Total time needed: 0.157s (Prepare: 0.080s, Compare: 0.000s, Erase: 0.036s, Program: 0.000s, Verify: 0.000s, Restore: 0.040s)
J-Link: Flash download: Total time needed: 0.177s (Prepare: 0.078s, Compare: 0.000s, Erase: 0.057s, Program: 0.000s, Verify: 0.000s, Restore: 0.041s)
J-Link: Flash download: Total time needed: 0.092s (Prepare: 0.055s, Compare: 0.000s, Erase: 0.015s, Program: 0.000s, Verify: 0.000s, Restore: 0.022s)
Erasing done.

J-Link>loadbin nuttx.hex, 0
'loadbin': Performing implicit reset & halt of MCU.
Reset: Halt core after reset via DEMCR.VC_CORERESET.
Reset: Reset device via AIRCR.SYSRESETREQ.
Downloading file [nuttx.hex]...
J-Link: Flash download: Bank 0 @ 0x08000000: 3 ranges affected (108544 bytes)
J-Link: Flash download: Total: 1.359s (Prepare: 0.076s, Compare: 0.028s, Erase: 0.024s, Program & Verify: 1.190s, Restore: 0.040s)
J-Link: Flash download: Program & Verify speed: 89 KB/s
J-Link: Flash download: Bank 1 @ 0x08020000: 2 ranges affected (112640 bytes)
J-Link: Flash download: Total: 1.772s (Prepare: 0.077s, Compare: 0.023s, Erase: 0.025s, Program & Verify: 1.603s, Restore: 0.041s)
J-Link: Flash download: Program & Verify speed: 68 KB/s
O.K.
J-Link>