Monday, March 4, 2024

ARC HS Development Kit

HSDK Board


Debugger

  • Ashling Opella-XD
Installation on Ubuntu 22.04.3 LTS

[ ]$ sudo apt-get install gcc-multilib
[ ]$ sudo apt-get install libqt5widgets5 [ ]$ sudo apt-get install libqt5widgets5:i386
[ ]$ sudo apt-get install libusb-1.0-0:i386


Using the JTAG low-level console

[ ]$ opxddiag --list
[ ]$ ash-arc-gdb-server --jtag-console-mode --device arc-hs

Load U-boot

[ ]$ mdb -DLL=opxdarc \
     -prop=jtag_frequency=12MHz \
     -prop=jtag_optimise=1 \
     -nooptions -run -cl -memxfersize=0x8000 u-boot
 
  • Digilent JTAG-HS2

[ ] $ djtgcfg enum
Found 2 device(s)

Device: JtagHs2
    Device Transport Type: 00020001 (USB)
    Product Name:          Digilent JTAG-HS2
    User Name:             JtagHs2
    Serial Number:         ooxxooxxooxxooxx

Device: HSDK
    Device Transport Type: 00020001 (USB)
    Product Name:          DesignWare ARC SDP
    User Name:             HSDK
    Serial Number:         ooxxooxxooxxooxx

Load U-boot

[ ]$ mdb -digilent -cl -run u-boot


Minicom Console

U-Boot 2024.01-rc3 (Nov 24 2023 - 17:37:03 +0800)

CPU:   ARC HS38 v2.1c at 500 MHz
Model: snps,hsdk
Board: Synopsys ARC HS Development Kit
U-Boot autostart: enabled
DRAM:  1 GiB
Core:  20 devices, 16 uclasses, devicetree: embed
Relocation Offset is: 3ef91000
MMC:   mmc0@f000a000: 0
Loading Environment from FAT... MMC: no card present
** Bad device specification mmc 0 **
In:    serial0@f0005000
Out:   serial0@f0005000
Err:   serial0@f0005000
Clock values are saved to environment
Net:
Warning: ethernet@f0008000 (eth0) using random MAC address - 2a:99:60:c5:a4:2c
eth0: ethernet@f0008000
hsdk#

Tuesday, June 20, 2017

HOWTO: Creating a Local Yum Repository Using an ISO Image on CentOS 7.0


  1. Create a mount point, for example /mnt/CentOS

  2.  [ ]# mount -o loop CentOS-7-x86_64-Everything-1611.iso/mnt/CentOS

  3. In the /etc/yum.repos.d directory, add and edit the repository files, such as CentOS-ISO.repo
  4. [c7-iso]
    name=CentOS-$releasever - ISO
    baseurl=file:///mnt/CentOS/
    gpgcheck=0
    enabled=1

  5. Clean up the yum cache

  6.  [ ]# sudo yum clean all

  7. Install RPM package

  8.  [ ]# sudo yum --disablerepo=\* --enablerepo=c7-iso install "package name"
    Install the 32-bit C library:
     [ ]# sudo yum --disablerepo=\* --enablerepo=c7-iso install glibc.i686

Sunday, June 18, 2017

The Year of AI

Machine Learning

Deep Learning

AI

It's all about computing capability under less resource consumption. The winner is who can perform more calculation in one clock cycle.

Wednesday, January 18, 2017

Xilinx Vivado

My first project

Friday, November 25, 2016

How to switch GCC version on Ububtu

I had installed GCC version 4.9 and 5.4 from the Ubuntu repositories. How to switch GCC version?
You can switch the symlinks yourself manually, but using "update-alternatives" makes it easy.

[ ]$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 100 --slave /usr/bin/g++ g++ /usr/bin/g++-4.9
[ ]$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 50 --slave /usr/bin/g++ g++ /usr/bin/g++-5 

Now you can switch between these versions by using:

[ ]$ sudo update-alternatives --config gcc

Change GCC 9 (Ubuntu 22.04)

[ ]$ sudo apt install gcc-9
[ ]$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 100

Tuesday, October 18, 2016

The 2 Good Books

System on Chip Interfaces for Low Power Design (PDF)

Paperback: 406 pages
Publisher: Morgan Kaufmann; 1 edition (December 22, 2015)
Language: English
ISBN-10: 0128016302
ISBN-13: 978-0128016305

Digital Design and Computer Architecture. ARM Edition (PDF)

Paperback: 584 pages
Publisher: Morgan Kaufmann; 1 edition (May 6, 2015)
Language: English
ISBN-10: 0128000562
ISBN-13: 978-0128000564

Saturday, July 30, 2016

Cortex-M on Mac OS


Build Toolchain

Copy the src release package into ~/mac-build/ directory
$ cp gcc-arm-none-eabi-5_3-2016q1-20160330-src.tar.bz2 ~/mac-build 

Prepare source codes
$ cd ~/mac-build
$ tar xjf gcc-arm-none-eabi-5_3-2016q1-20160330-src.tar.bz2
$ cd ./gcc-arm-none-eabi-5_3-2016q1-20160330/src
$ find . -name '*.tar.*' | xargs -I% tar -xf %
$ cd ..
  • Build the toolchain
Start building the toolchain.
$ ./build-prerequisites.sh
$ ./build-toolchain.sh


Cortex-M Platform

[TTBD] TI, NXP, ?