ModelSim e Floating Point

Sezione dedicata alle logiche programmabili

ModelSim e Floating Point

Postby Leonardo » 08 Jan 2014, 19:49

Salve a tutti,

In Modelsim è possibile visualizzare i segnali come Floating Point secondo standard IEEE 754 floating point?

E' presente nel menù Radix del Wave Editor l'opzione Fixed Point ma manca la sorella per i numeri a virgola mobile e non è tanto comodo fare "debug" passando in continuazione ad un convertitore Hex to IEEE 754 floating point

Grazie
Ciao
Il mio blog di elettronica: http://electro-logic.blogspot.it
User avatar
Leonardo
 
Posts: 502
Joined: 29 May 2013, 22:31
Location: Parma

Re: ModelSim e Floating Point

Postby deluca » 09 Jan 2014, 10:51

@Leo,
Ti converrebbe convertirli in reali usando il package per la conversione.

perchè complicarti la vita nella interpretazione?
Ciao
Il mio sito: http://www.delucagiovanni.com ......e la chat: chat/
User avatar
deluca
Site Admin
 
Posts: 1104
Joined: 19 Jun 2011, 10:44
Location: 95123 - Catania (Italy)

Re: ModelSim e Floating Point

Postby Leonardo » 09 Jan 2014, 14:18

Grazie Giovanni per la risposta,
E' una soluzione semplice ed efficace!

Per futura memoria appunto in questo post alcune note, che potranno magari essere utili ai nuovi arrivati

Non utilizzando il package VHDL 2008 (http://www.eda.org/fphdl) ma le MegaFunction di Altera ALTFP_*, etc.. dove ALTFP_CONVERT non permette la conversione al tipo real, pensavo di incorrere in problemi ma..

Il testbench è compilato da ModelSim (nel mio caso v.10.1d) che supporta VHDL 2008 e non da Quartus (v.13.1), l'aggiunta nel testbench di
Code: Select all
use ieee.float_pkg.all;

ha perciò funzionato senza problemi, avendo i valori float in un vettore STD_LOGIC come
Code: Select all
SIGNAL   float_signal : STD_LOGIC_VECTOR(31 DOWNTO 0);

è bastato quindi creare un segnale del tipo real
Code: Select all
SIGNAL   real_signal : real;

e tramite le funzioni di conversione assegnarli il valore del segnale contenente il valore float tramite una conversione a priori verso il tipo float
Code: Select all
real_signal <= To_real( To_float(float_signal) );
Il mio blog di elettronica: http://electro-logic.blogspot.it
User avatar
Leonardo
 
Posts: 502
Joined: 29 May 2013, 22:31
Location: Parma

Re: ModelSim e Floating Point

Postby deluca » 09 Jan 2014, 14:58

Perfetto !!

;) efficacissima Leo
Ciao
Il mio sito: http://www.delucagiovanni.com ......e la chat: chat/
User avatar
deluca
Site Admin
 
Posts: 1104
Joined: 19 Jun 2011, 10:44
Location: 95123 - Catania (Italy)


Return to FPGA & CPLD

Who is online

Users browsing this forum: No registered users and 5 guests

cron