diff options
Diffstat (limited to 'part_3/ex12/sin_gen_scripts/sinegen.m')
-rwxr-xr-x | part_3/ex12/sin_gen_scripts/sinegen.m | 86 |
1 files changed, 43 insertions, 43 deletions
diff --git a/part_3/ex12/sin_gen_scripts/sinegen.m b/part_3/ex12/sin_gen_scripts/sinegen.m index f459f5c..1c0f400 100755 --- a/part_3/ex12/sin_gen_scripts/sinegen.m +++ b/part_3/ex12/sin_gen_scripts/sinegen.m @@ -1,43 +1,43 @@ -% Purpose: MATLAB script to produce contents of a ROM that stores
-% one cycle of sinewave
-% Inputs: None
-% Outputs: rom_data.mif file
-% Author: Peter Cheung
-% Version: 1.0
-% Date: 20 Nov 2011
-
-DEPTH = 1024; % Size of ROM
-WIDTH = 10; % Size of data in bits
-OUTMAX = 2^WIDTH - 1; % Amplitude of sinewave
-
-filename = 'rom_data.mif';
-fid = fopen(filename,'w');
-
-fprintf(fid,'-- ROM Initialization file\n');
-fprintf(fid,'WIDTH = %d;\n',WIDTH);
-fprintf(fid,'DEPTH = %d;\n',DEPTH);
-fprintf(fid,'ADDRESS_RADIX = HEX;\n');
-fprintf(fid,'DATA_RADIX = HEX;\n');
-fprintf(fid,'CONTENT\nBEGIN\n');
-
-for address = 0:1023
- angle = (address*2*pi)/DEPTH;
- sine_value = sin(angle);
- data = (sine_value*0.5*OUTMAX) + OUTMAX*0.5;
-
- fprintf(fid,'%4X : %4X;\n',address,int16(data));
-end
-
-fprintf(fid,'END\n');
-fclose(fid);
-disp('Finished');
-
-
-
-
-
-
-
-
-
-
+% Purpose: MATLAB script to produce contents of a ROM that stores +% one cycle of sinewave +% Inputs: None +% Outputs: rom_data.mif file +% Author: Peter Cheung +% Version: 1.0 +% Date: 20 Nov 2011 + +DEPTH = 1024; % Size of ROM +WIDTH = 10; % Size of data in bits +OUTMAX = 2^WIDTH - 1; % Amplitude of sinewave + +filename = 'rom_data.mif'; +fid = fopen(filename,'w'); + +fprintf(fid,'-- ROM Initialization file\n'); +fprintf(fid,'WIDTH = %d;\n',WIDTH); +fprintf(fid,'DEPTH = %d;\n',DEPTH); +fprintf(fid,'ADDRESS_RADIX = HEX;\n'); +fprintf(fid,'DATA_RADIX = HEX;\n'); +fprintf(fid,'CONTENT\nBEGIN\n'); + +for address = 0:1023 + angle = (address*2*pi)/DEPTH; + sine_value = sin(angle); + data = (sine_value*0.5*OUTMAX) + OUTMAX*0.5; + + fprintf(fid,'%4X : %4X;\n',address,int16(data)); +end + +fprintf(fid,'END\n'); +fclose(fid); +disp('Finished'); + + + + + + + + + + |