From 5bf53126aa4ae09b1d3723113b2a81efc11e1505 Mon Sep 17 00:00:00 2001 From: Shuchita Khare Date: Mon, 7 Mar 2022 16:44:26 +0000 Subject: [PATCH 01/10] removed unreleased entry from changelog --- CHANGELOG.rst | 6 +----- README.md => README.rst | 0 2 files changed, 1 insertion(+), 5 deletions(-) rename README.md => README.rst (100%) diff --git a/CHANGELOG.rst b/CHANGELOG.rst index dbded58..f7c2f91 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -4,11 +4,7 @@ xscope fileio change log 1.0.0 ----- - * ADDED: support for building and running the host endpoint on Windows - -0.4.1 ------ - + * ADDED: support for building and running the host endpoint on Windows * ADDED: XMOS public V1 license * ADDED: support for run_on_target() to optionally redirect stdout to file * REMOVED:run_on_target() method returns stdout/err as list of lines diff --git a/README.md b/README.rst similarity index 100% rename from README.md rename to README.rst From d99ebed4622025f9641477e32424516a1c961b95 Mon Sep 17 00:00:00 2001 From: Shuchita Khare Date: Mon, 7 Mar 2022 16:52:14 +0000 Subject: [PATCH 02/10] README changes --- README.rst | 61 +++++++++++++++++++++++++++++++----------------------- 1 file changed, 35 insertions(+), 26 deletions(-) diff --git a/README.rst b/README.rst index 2d0af74..c854247 100644 --- a/README.rst +++ b/README.rst @@ -1,4 +1,5 @@ -# Xscope FileIO +Xscope FileIO +============= This library allows a program on the xCore to access binary files on the host machine via xscope. @@ -15,7 +16,8 @@ Currently it supports: This compares to around 2kBytes/s for fileio over JTAG supported using `xrun --io`. -## Installation +Installation +************ `pip install -e .` or `pip install .` @@ -29,42 +31,46 @@ on your build system, but you can use `cmake` to generate build files for your b option, eg. `cmake -G"NMake Makefiles" .` -## Host side API +Host side API +------------- The host-side interface is written in Python. To run an xcore binary with access to xscope fileIO, use: -```python -xscope_fileio.run_on_target(adapter_id, firmware_xe, use_xsim=False) -``` + +:: + + xscope_fileio.run_on_target(adapter_id, firmware_xe, use_xsim=False) + This can be combined with xtagctl e.g.: -```python -with xtagctl.acquire("XCORE-AI-EXPLORER") as adapter_id: - xscope_fileio.run_on_target(adapter_id, device_xe) -``` +:: + + with xtagctl.acquire("XCORE-AI-EXPLORER") as adapter_id: + xscope_fileio.run_on_target(adapter_id, device_xe) -## Device side API +Device side API +--------------- Source and header files for device code are found in `src_xcore` -```c -void xscope_io_init(chanend_t xscope_end); +:: -xscope_file_t xscope_open_file(char* filename, char* attributes); + void xscope_io_init(chanend_t xscope_end); -//NOTE MAXIMUM n_bytes_to_read of 64kB on Linux http://bugzilla/show_bug.cgi?id=18528 -size_t xscope_fread(xscope_file_t *xscope_io_handle, uint8_t *buffer, size_t n_bytes_to_read); + xscope_file_t xscope_open_file(char* filename, char* attributes); -void xscope_fwrite(xscope_file_t *xscope_io_handle, uint8_t *buffer, size_t n_bytes_to_write); + //NOTE MAXIMUM n_bytes_to_read of 64kB on Linux http://bugzilla/show_bug.cgi?id=18528 + size_t xscope_fread(xscope_file_t *xscope_io_handle, uint8_t *buffer, size_t n_bytes_to_read); -void xscope_fseek(xscope_file_t *xscope_io_handle, int offset, int whence); + void xscope_fwrite(xscope_file_t *xscope_io_handle, uint8_t *buffer, size_t n_bytes_to_write); -int xscope_ftell(xscope_file_t *xscope_file); + void xscope_fseek(xscope_file_t *xscope_io_handle, int offset, int whence); -void xscope_close_all_files(void); -``` + int xscope_ftell(xscope_file_t *xscope_file); + + void xscope_close_all_files(void); The device side application requires a multi-tile main since it uses the xscope_host_data(xscope_chan); service to communicate with the host, which requires this. See examples for XC and C applications for how to do this. @@ -75,11 +81,13 @@ can find a copy in `xscope_fileio/config.xscope xscope_fileio/config.xscope.txt` Note currently missing from fileio api: -``` -fprintf, fscanf -``` +:: + + fprintf, fscanf + -## System Architecture +System Architecture +------------------- The `run_on_target` function calls `xrun --xscope-port` with the binary and specified target adapter, and simultaneously launches a host application to communicate xscope data to/from @@ -88,4 +96,5 @@ in the firmware code, reading/writing to the host file system. The call to `run_on_target` returns when the firmware exits. -![System Architecture](arch.png "System Architecture") +.. image:: arch.png + :alt: System Architecture From 0b9a64d2d09653e471d6c9d58748aa79237d10b0 Mon Sep 17 00:00:00 2001 From: Shuchita Khare Date: Mon, 7 Mar 2022 16:56:29 +0000 Subject: [PATCH 03/10] README changes --- README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.rst b/README.rst index c854247..8237172 100644 --- a/README.rst +++ b/README.rst @@ -14,7 +14,7 @@ Currently it supports: * Up to 1MBytes/s Host to Device speed (on tools 15.0.4) -This compares to around 2kBytes/s for fileio over JTAG supported using `xrun --io`. +This compares to around 2kBytes/s for fileio over JTAG supported using ``xrun --io``. Installation ************ From 4b5ae6c089dfb488e0249cf07be9b31c02adb01b Mon Sep 17 00:00:00 2001 From: Shuchita Khare Date: Mon, 7 Mar 2022 16:57:51 +0000 Subject: [PATCH 04/10] README changes --- README.rst | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.rst b/README.rst index 8237172..093d2ca 100644 --- a/README.rst +++ b/README.rst @@ -19,16 +19,16 @@ This compares to around 2kBytes/s for fileio over JTAG supported using ``xrun -- Installation ************ -`pip install -e .` or `pip install .` +``pip install -e .`` or ``pip install .`` -To compile firmware code, add `src_xcore` to your source dirs and include dirs. +To compile firmware code, add ``src_xcore`` to your source dirs and include dirs. -**Ensure you use the `config.xscope` included in `src_xcore`.** +**Ensure you use the ``config.xscope`` included in ``src_xcore``.** If running on a Windows host, you will have to build the host endpoint yourself; the resulting executable -`xscope_host_endpoint.exe` must be placed in the `host` directory. The specific commands will vary depending +``xscope_host_endpoint.exe`` must be placed in the ``host`` directory. The specific commands will vary depending on your build system, but you can use `cmake` to generate build files for your build system using the `-G` -option, eg. `cmake -G"NMake Makefiles" .` +option, eg. ``cmake -G"NMake Makefiles" .`` Host side API From 73e32b731699e5a3ee5a8293f7d371e61ad43362 Mon Sep 17 00:00:00 2001 From: Shuchita Khare Date: Mon, 7 Mar 2022 17:14:24 +0000 Subject: [PATCH 05/10] README changes --- README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.rst b/README.rst index 093d2ca..5015809 100644 --- a/README.rst +++ b/README.rst @@ -23,7 +23,7 @@ Installation To compile firmware code, add ``src_xcore`` to your source dirs and include dirs. -**Ensure you use the ``config.xscope`` included in ``src_xcore``.** +**Ensure you use the config.xscope included in src_xcore.** If running on a Windows host, you will have to build the host endpoint yourself; the resulting executable ``xscope_host_endpoint.exe`` must be placed in the ``host`` directory. The specific commands will vary depending From c336dd82e6b26460b260600d27fd56b77d5ec9e4 Mon Sep 17 00:00:00 2001 From: Shuchita Khare Date: Mon, 7 Mar 2022 17:36:35 +0000 Subject: [PATCH 06/10] fix png background --- arch.png | Bin 14089 -> 18850 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/arch.png b/arch.png index 85f37fb46b78a24c654c2d923939ce21cff2b1e6..14c1710cd706f21c00d572e9ffe1a50d221e446e 100644 GIT binary patch literal 18850 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 literal 14089 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 Date: Mon, 7 Mar 2022 17:40:16 +0000 Subject: [PATCH 07/10] fix png background --- arch.png | Bin 18850 -> 18859 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/arch.png b/arch.png index 14c1710cd706f21c00d572e9ffe1a50d221e446e..6f1e9549f8e3d2ccd0acf0af6552a860ec2a9440 100644 GIT binary patch literal 18859 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�qsqzHPz&F8G5 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 From d5b25a213970ee077a55057f97e80b2deeb43aa8 Mon Sep 17 00:00:00 2001 From: Shuchita Khare Date: Tue, 8 Mar 2022 10:41:41 +0000 Subject: [PATCH 08/10] modified png --- arch.png | Bin 18859 -> 24250 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/arch.png b/arch.png index 6f1e9549f8e3d2ccd0acf0af6552a860ec2a9440..99918c1768e070365884809c2f88db0e1bc7d3f2 100644 GIT binary patch literal 24250 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 Y&Nc`TB@F=6>6w^xH4QaBsM)>xFV|!Dn*aa+ literal 18859 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�qsqzHPz&F8G5 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 i(7tvkidOhgzxnJ2m9W*9jey6bFnGH9xvX Date: Tue, 8 Mar 2022 10:44:22 +0000 Subject: [PATCH 09/10] Added draw.io source of the diagram --- xscope_fileio.drawio.svg | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 xscope_fileio.drawio.svg diff --git a/xscope_fileio.drawio.svg b/xscope_fileio.drawio.svg new file mode 100644 index 0000000..489707f --- /dev/null +++ b/xscope_fileio.drawio.svg @@ -0,0 +1,4 @@ + + + +
xrun
xrun

xscope_file_io_host

xscope_file_io_host
HOST
XTAG
XCORE

xscope_file_io_device

xscope_file_io_device
file a
file a
socket
socket
file b
file b
Xcore test app
Text is not SVG - cannot display
\ No newline at end of file From c17f94507e79255064d32ea66bccd5590f389b08 Mon Sep 17 00:00:00 2001 From: Shuchita Khare Date: Tue, 8 Mar 2022 11:31:28 +0000 Subject: [PATCH 10/10] Fixed README formatting --- README.rst | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/README.rst b/README.rst index 5015809..4b678c7 100644 --- a/README.rst +++ b/README.rst @@ -27,7 +27,7 @@ To compile firmware code, add ``src_xcore`` to your source dirs and include dirs If running on a Windows host, you will have to build the host endpoint yourself; the resulting executable ``xscope_host_endpoint.exe`` must be placed in the ``host`` directory. The specific commands will vary depending -on your build system, but you can use `cmake` to generate build files for your build system using the `-G` +on your build system, but you can use ``cmake`` to generate build files for your build system using the ``-G`` option, eg. ``cmake -G"NMake Makefiles" .`` @@ -53,7 +53,7 @@ This can be combined with xtagctl e.g.: Device side API --------------- -Source and header files for device code are found in `src_xcore` +Source and header files for device code are found in ``src_xcore`` :: @@ -75,9 +75,9 @@ Source and header files for device code are found in `src_xcore` The device side application requires a multi-tile main since it uses the xscope_host_data(xscope_chan); service to communicate with the host, which requires this. See examples for XC and C applications for how to do this. -You will also need a copy of `config.xscope` in your firmware directory. This +You will also need a copy of ``config.xscope`` in your firmware directory. This enables xscope in the tools and sets up the xscope probes used by fileio for communicating with the host app. You -can find a copy in `xscope_fileio/config.xscope xscope_fileio/config.xscope.txt` which you should rename to `config.xscope`. +can find a copy in ``xscope_fileio/config.xscope xscope_fileio/config.xscope.txt`` which you should rename to ``config.xscope``. Note currently missing from fileio api: @@ -89,12 +89,12 @@ Note currently missing from fileio api: System Architecture ------------------- -The `run_on_target` function calls `xrun --xscope-port` with the binary and specified target adapter, +The ``run_on_target`` function calls ``xrun --xscope-port`` with the binary and specified target adapter, and simultaneously launches a host application to communicate xscope data to/from -the xrun process via sockets. The host application responds to `xscope_fileio` API calls +the xrun process via sockets. The host application responds to ``xscope_fileio`` API calls in the firmware code, reading/writing to the host file system. -The call to `run_on_target` returns when the firmware exits. +The call to ``run_on_target`` returns when the firmware exits. .. image:: arch.png :alt: System Architecture