Nios II 코어 생성하다 보니 명령어별 cycle이 나와서 한번 어떤 명령어 인가 조사를 해보는데..
관건은.. 1 cycle이냐 2 cycle 이냐로 갈리는 Multiply Extended 명령어들!
일단 일반적인 곱셈은
MUL
Multiplies rA times rB and stores the 32 low-order bits of the product to rC. The result is the same whether the operands are treated as signed or unsigned integers.
Operation에 rC <- (rA x rB)31...0 인데.. 32비트 연산이라는 의미 같고
MULXSS
Treating rA and rB as signed integers, mulxss multiplies rA times rB, and stores the 32 high-order bits of the product to rC.
Operation 에서 rC <- ((singed)rA) x ((signed)rB))63..32 로
32비트를 초과하는 상위 비트에 대해서 계산을 한다는 건가?
아무튼 확장 곱셈 명령으로는 세가지가 있는데 로직을 얼마나 사용할 진 모르겠지만
Big integer 계산하는게 아니라면 2 cycle로 처리가 가능하니 굳이 안하는게 이득일 것으로 보인다.
mulxss multiply extended signed/signed
mulxsu multiply extended signed/unsigned
mulxuu multiply extended unsigned/unsigned
[링크 : https://www.altera.com/en_US/pdfs/literature/hb/nios2/n2cpu_nii51017.pdf]
+
어라.. Nios II (Classic) Processor 를 선택하니 Nios II/s가 보이네?
'embeded > FPGA - ALTERA' 카테고리의 다른 글
Nios II 이미지 합치기 (조사) (0) | 2018.01.27 |
---|---|
Nios II 프로그램 빌드.. (0) | 2018.01.27 |
nios2 /e /f 별 설정 (0) | 2018.01.25 |
my first Nios II with DE0-nano (0) | 2018.01.25 |
Quartus 2 Programmer Mode 조사 (0) | 2018.01.23 |