googlepay.kr [컴퓨터] VHDL / 부동소수점 가산기 / floating point adder 전체 소스코드 (IEEE754) > googlepay17 | googlepay.kr report

[컴퓨터] VHDL / 부동소수점 가산기 / floating point adder 전체 소스코드 (IEEE754) > googlepay17

본문 바로가기

googlepay17


[[ 이 포스팅은 제휴마케팅이 포함된 광고로 커미션을 지급 받습니다. ]


[컴퓨터] VHDL / 부동소수점 가산기 / floating point adder 전체 소스코드 (IEEE754)

페이지 정보

작성일 23-05-22 10:51

본문




Download : Floating_Point_Adder.zip




숫자의 부동소수점 표현은 두 부분으로 구성되어 있다.
이를 VHDL 언어로 기술하기 위해서는 IEEE 부동소수점 형식에 대한 이해가 필요하며


때문에 0이 아닌 이상에는 Bit_Man_1은 1이 될 것이다. overflow가 생긴 경우, 지수 조정이 필요 없는 경우,
Result: : Result of or`ing all of the bits of the vector.
두 유효숫자의 차를 계산한다.
설명
두 수의 지수를 비교 후 부호 비트, 지수 부분, 분수 부분을 결정하는 함수
부동소수점 연산기를 설계해보면서 이제까지 습득한 VHDL 문법과 논리적 블록 설계능력을 더욱 향상 시킬 수 있게 된다된다.
큰 지수(in_Exp_1)에서 작은 지수(in_Exp_2)를 뺀 결과를 저장(Exp_Sub)한다.
부동소수점의 연산을 VHDL 언어로 구현함을 목표로 한다.
[컴퓨터] VHDL / 부동소수점 가산기 / floating point adder 전체 소스코드 (IEEE754)

list_blank.png list_blank_.png list_blank_.png list_blank_.png list_blank_.png
각 단계(stage1~stage7)를 순차적으로 실행

stage_1 : Compare_Exponent
작은 지수가 큰 지수와 같은 값을 갖게 될 때까지 shift해 주는 함수
FUNCTION or_reduce(arg : SIGNED) RETURN STD_LOGIC;
지수 조정이 필요한 경우, 결과 값이 0인 경우로 나뉜다. 첫 번째는 가수라고 하는 부호화된 고정소수점 숫자이고 두 번째는 지수라고 하는 십진 또는 이진 소수점의 위치를 알려주는 부분이다.

Download : Floating_Point_Adder.zip( 69 )



stage_7 : Normal_2

지수 부분이 큰 수를 out_1에 저장하고, 지수 부분이 작은 수를 out_2에 저장한다.
Floating_Point_Adder



최종 결과 값을 저장한다. 이를 VHDL 언어로 기술하기 위해서는 IEEE 부동소수점 형식에 대한 이해가 필요하며 블록화된 구현방식의 설계를 요구한다.

지수가 작았던 수는 stage_2에서 shift를 계산했던 만큼 오른쪽으로 시프트하여 결과 값을 저장 한다.
두 수의 부호비트가 같을 경우와 다를 경우로 나뉜다.

stage_3 : Shift_Man
두 지수의 차이만큼 오른쪽 시프트를 하기 위해서 Shift 변수에 저장한다.
유효자리를 정규화 하는 함수
Result subtype: STD_LOGIC.
stage_4에서 조사한 두 부호비트의 상황에 맞춰 같은 부호이면 두 유효숫자를 더하고, 다른 부호이면
순서
결과 값의 exponent는 처음 기준이 되었던 in_Exp_1으로 설정한다.

레포트 > 공학,기술계열


첫 번째는 가수라고 하는 부호화된 고정소수점 숫자이고
두 수의 부호비트가 다를 경우 유효숫자가 큰 수를 out_Man_1에 저장한다.

어느 비트에서 처음으로 1이 발생했는지에 따라 구분된다.
overflow가 생길 경우를 대비해서 1bit를 확장하여 최상위 비트에 0을 추가한다.
두 유효숫자의 연산 결과를 分析하는 함수

stage_6 : Normal_1
input, output, component definition

최상위 1bit는 sign, 23~30bit는 exponent, 0~22bit는 mantissa로 분리한다.



stage_2 : Compute_Shift

두 입력 값의 지수 부분을 비교한다.
stage_4 : Compare_Man

만약 carry가 발생했다면 exponent에 1을 더해준다.
다. 부동소수점 연산기를 설계해보면서 이제까지 습득한 VHDL 문법과 논리적 블록 설계능력을 더욱 향상 시킬 수 있게 된다. 선행하는 1은 유효자리에 숨겨져 있기
stage_5 : AddSub_Man
블록화된 구현방식의 설계를 요구한다.

부동소수점의 연산을 VHDL 언어로 구현함을 목표로 한다.

숫자의 부동소수점 표현은 두 부분으로 구성되어 있다

두 번째는 지수라고 하는 십진 또는 이진 소수점의 위치를 알려주는 부분이다.
부동소수점, 가산기, vhdl, ieee754, 부동소수점가산기, 플로팅포인트, floating, adder
연산 결과에 따라 지수 조정을 해야 한다.
유효숫자 계산할 때 맨 앞자리에 Bit_Man_1을 계산해서 추가한다.
Total 18,147건 656 페이지

검색

REPORT 11(sv76)



해당자료의 저작권은 각 업로더에게 있습니다.

googlepay.kr 은 통신판매중개자이며 통신판매의 당사자가 아닙니다.
따라서 상품·거래정보 및 거래에 대하여 책임을 지지 않습니다.
[[ 이 포스팅은 제휴마케팅이 포함된 광고로 커미션을 지급 받습니다 ]]

[저작권이나 명예훼손 또는 권리를 침해했다면 이메일 admin@hong.kr 로 연락주시면 확인후 바로 처리해 드리겠습니다.]
If you have violated copyright, defamation, of rights, please contact us by email at [ admin@hong.kr ] and we will take care of it immediately after confirmation.
Copyright © googlepay.kr All rights reserved.