'embeded/openRISC'에 해당되는 글 5건

  1. 2018.01.29 openRISC on FPGA
  2. 2015.12.14 or32 컴파일러.. 삽질
  3. 2015.12.11 openRISC OR1k(1000) OR1200
  4. 2015.12.10 openrisc 어셈블리
  5. 2015.11.27 openRISC chaintool
embeded/openRISC2018. 1. 29. 18:31

'embeded > openRISC' 카테고리의 다른 글

or32 컴파일러.. 삽질  (0) 2015.12.14
openRISC OR1k(1000) OR1200  (0) 2015.12.11
openrisc 어셈블리  (0) 2015.12.10
openRISC chaintool  (0) 2015.11.27
Posted by 구차니
embeded/openRISC2015. 12. 14. 13:47

걍 포기할까...

LD_LIBRARY_PATH 잘못설정하면 절대 좋은꼴을 못보는데... ㄷㄷㄷ


./as: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory

$ sudo apt-get install zlib1g:i386

$ sudo apt-get install libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5

[링크 : http://stackoverflow.com/questions/21256866/libz-so-1-cannot-open-shared-object-file]



/cc1: error while loading shared libraries: libmpc.so.2: cannot open shared object file: No such file or directory


export LD_LIBRARY_PATH="/usr/local/lib" sudo ldconfig


[링크 : http://stackoverflow.com/.../cc1-error-while-loading-shared-libraries-libmpc-so-2-...c]



$ sudo find / -name "libmpc.so.*"

/usr/lib/x86_64-linux-gnu/libmpc.so.2.0.0

/usr/lib/x86_64-linux-gnu/libmpc.so.2


$ sudo apt-cache search libmpc

libmpc-dev - multiple precision complex floating-point library development package

libmpc2 - multiple precision complex floating-point library

libmpcdec-dev - MusePack decoder - development files

libmpcdec6 - MusePack decoder - library

mppenc - Musepack lossy audio codec encoder


이거.. 볼수록 잘못 건드리면 헬게이트 열릴 기분인데?



as: error while loading shared libraries: libopcodes-2.23.51.20121129.so: cannot open shared object file: No such file or directory

미친척 or1k껄로 했더니 여전히 헬게이트.. 걍 포기


'embeded > openRISC' 카테고리의 다른 글

openRISC on FPGA  (0) 2018.01.29
openRISC OR1k(1000) OR1200  (0) 2015.12.11
openrisc 어셈블리  (0) 2015.12.10
openRISC chaintool  (0) 2015.11.27
Posted by 구차니
embeded/openRISC2015. 12. 11. 10:19


The OR1200 is a 32-bit scalar RISC with Harvard microarchitecture, 5 stage integer pipeline, virtual memory support (MMU) and basic DSP capabilities.

[링크 : http://opencores.org/or1k/OR1200_OpenRISC_Processor]


CPU CPUID

or1ksim 0x00

OR1200 0x12

mor1kx 0x01

AltOr32 0x32

OR10 0x10

or1knd i5 0xd5


[링크 : http://opencores.org/or1k/OR1K_CPU_Cores]




=== CPUID관련 ===


For now, we have implemented a CPU-ID register, that is SPR_SYS register 9, to allow different stacks in the same memory etc. 


[링크 : http://opencores.com/forum,OpenRISC,0,3666]


    Section 15.2

    Version Register (VR)

    The version register is a 32-bit special-purpose supervisor-level

register accessible with the l.mfspr instruction.

    It identifies the implementation (model) and version of the

OpenRISC 1000 processor.


    [31:24] VER Version

    Implementation-specific version information. This value should

increase for more recent versions. The CPU implementation

specification document should indicate how to interpret this field.


    [23:0] CPUID CPU Identification

    Implementation-specific identification number. Each unique

implementation should have a unique identification value.


[링크 : http://lists.opencores.org/pipermail/openrisc/2011-August/000090.html]


>>> +++ b/newlib/libc/machine/or1k/include/spr-defs.h

>>> @@ -201,6 +201,15 @@

>>>  #define SPR_VR2_CPUID_OFF   24

>>>  #define SPR_VR2_VER_OFF     0

>>>

>>> +/*

>>> + * CPU implementation unique identifiers

>>> + */

>>> +#define SPR_VR2_CPUID_OR1KSIM   0x00

>>> +#define SPR_VR2_CPUID_MOR1KX    0x01

>>> +#define SPR_VR2_CPUID_OR1200    0x12

>>> +#define SPR_VR2_CPUID_ALTOR32   0x32

>>> +#define SPR_VR2_CPUID_OR10      0x10

>>> +


[링크 : http://lists.opencores.org/pipermail/openrisc/2012-December/001171.html]



흐음... 0x13은 머지....

CPU0 : SPR_VR : 0x13000008

CPU1 : SPR_VR : 0x12000008


dprintf("CPU0 : SPR_VR : 0x%X\n", mfspr(SPR_VR));

#define SPR_VR (SPRGROUP_SYS + 0)


/*

 * Bit definitions for the Version Register

 *

 */

#define SPR_VR_VER 0xff000000  /* Processor version */

#define SPR_VR_CFG 0x00ff0000  /* Processor configuration */

#define SPR_VR_RES 0x0000ffc0  /* Reserved */

#define SPR_VR_REV 0x0000003f  /* Processor revision */


#define SPR_VR_VER_OFF 24

#define SPR_VR_CFG_OFF 16

#define SPR_VR_REV_OFF 0 


'embeded > openRISC' 카테고리의 다른 글

openRISC on FPGA  (0) 2018.01.29
or32 컴파일러.. 삽질  (0) 2015.12.14
openrisc 어셈블리  (0) 2015.12.10
openRISC chaintool  (0) 2015.11.27
Posted by 구차니
embeded/openRISC2015. 12. 10. 14:35

공식문서는 없으려나..


arm이나 x86과 다르게

l.nop 식으로 l.이 접두로 붙네...

(폰트 문제로 1.nop 인줄..)


[링크 : https://sourceware.org/cgen/gen-doc/openrisc-insn.html]



+

or1k(openrisk 1000)


명령어 셋별 접두어

ORBIS32/64

l.


ORFPX32/64

lf.


ORVDX64:

lv.


[링크 : https://github.com/openrisc]

    [링크 : https://raw.githubusercontent.com/openrisc/doc/master/openrisc-arch-1.1-rev0.pdf]

[링크 : http://opencores.org/or1k/Main_Page]

    [링크 : http://opencores.org/or1k/Architecture_Specification]



SPR Special-Purpose Register

'embeded > openRISC' 카테고리의 다른 글

openRISC on FPGA  (0) 2018.01.29
or32 컴파일러.. 삽질  (0) 2015.12.14
openRISC OR1k(1000) OR1200  (0) 2015.12.11
openRISC chaintool  (0) 2015.11.27
Posted by 구차니
embeded/openRISC2015. 11. 27. 11:53

Latest version

Note: This is not an official release but should still be fine to use.

for Ubuntu 32-bit built from SVN rev. 789, also contains or1ksim


[링크 : http://opencores.org/or1k/Or32Toolchain]



+

or32는 구형 버전이고 신형은 or1k로 시작한다고 한다.


Note: Older versions of the toolchain used the or32- prefix instead of or1k-. Please consider using the new or1k toolchain, unless you have special requirements regarding backwards compatibility with existing code. Binaries, build instructions and more information about the or32- toolchain is available on the or32 toolchain page.

[링크 : http://opencores.org/or1k/OpenRISC_GNU_tool_chain]

'embeded > openRISC' 카테고리의 다른 글

openRISC on FPGA  (0) 2018.01.29
or32 컴파일러.. 삽질  (0) 2015.12.14
openRISC OR1k(1000) OR1200  (0) 2015.12.11
openrisc 어셈블리  (0) 2015.12.10
Posted by 구차니