Question

In: Physics

Develop an I/O port decoder, using a PLD, that generates 16-bit I/O strobes for the following...

Develop an I/O port decoder, using a PLD, that generates 16-bit I/O strobes for the following 16-bit I/O port addresses: 1000H-1001H, 1002H-103H, 1004H-1005H, 1006H-1007H, 1008H-1009H, 100AH-100BH, 100CH-100DH, and 100EH-100FH.

Solutions

Expert Solution

library ieee;
use ieee.std_logic_1164.all;

entity decoder_16 is

port ( address_io : in std_logic_vector (15 downto 0);
strobe : out std_logic_vector (15 downto 0)
);

end decoder_16;

architecture arch of decoder_16 is

begin

process (address_io)

begin

case (address_io) is

when x"1000" => strobe <= x"8000";
when x"1001" => strobe <= x"4000";
when x"1002" => strobe <= x"2000";
when x"1003" => strobe <= x"1000";
when x"1004" => strobe <= x"0800";
when x"1005" => strobe <= x"0400";
when x"1006" => strobe <= x"0200";
when x"1007" => strobe <= x"0100";
when x"1008" => strobe <= x"0080";
when x"1009" => strobe <= x"0040";
when x"100A" => strobe <= x"0020";
when x"100B" => strobe <= x"0010";
when x"100C" => strobe <= x"0008";
when x"100D" => strobe <= x"0004";
when x"100E" => strobe <= x"0002";
when x"100F" => strobe <= x"0001";
when others => null;

end case;

end process;

end arch;


Related Solutions

write the code for 16-bit ALU using vivado. Approach : A hierarchical design approach for 16-bit...
write the code for 16-bit ALU using vivado. Approach : A hierarchical design approach for 16-bit ALU using a Full Adders (16-bit), Multiplier (16-bit), Full Subtractor (16-bit), and shift left A register. include test bench. S0 S1 Alu-operation 0 0 addition 0 1 subtraction 1 0 multiplication 1 1 shift right
Using the parity bit, port b is to flash in a pattern of Odd Numbered LEDs...
Using the parity bit, port b is to flash in a pattern of Odd Numbered LEDs On and Even Numbered LEDS Off for 1 second, and then Odd Numbered LEDs Off and Even Numbered LEDS On for 1 second. This pattern will repeat indefinitely. Please provide the both the assembly code for MPLAB and a flow chart. Note - consider delay calculations and port B initialization have already been completed.
I need assistance with using Verilog to code the following: The decoder needs attention. Its function...
I need assistance with using Verilog to code the following: The decoder needs attention. Its function is to take the 10‐bit input, and give three 4‐bit signals. The first 4‐bit signal should be the number of hundreds, the second 4‐bit signal should be the number of tens, and the final 4‐bit signal should be the number of units. In Verilog, these can be calculated simply using the numerical operators, specifically: Divide (/)  Modulus(%) Given: input[9:0] number reg[3:0] numb_bcd0, numb_bcd1, numb_bcd2;   ...
Design a 64M x 64-bit memory using 16M x 16-bit memory modules.
Design a 64M x 64-bit memory using 16M x 16-bit memory modules.
These questions concern the following 16-bit floating point representation: The first bit is the sign of...
These questions concern the following 16-bit floating point representation: The first bit is the sign of the number (0 = +, 1 = -), the next nine bits are the mantissa, the next bit is the sign of the exponent, and the last five bits are the magnitude of the exponent. All numbers are normalized, i.e. the first bit of the mantissa is one, except for zero which is all zeros. a) What is the largest number? (in both 16-bit...
Concern the following 16-bit floating point representation: The first bit is the sign of the number...
Concern the following 16-bit floating point representation: The first bit is the sign of the number (0 = +, 1 = -), the next nine bits are the mantissa, the next bit is the sign of the exponent, and the last five bits are the magnitude of the exponent. All numbers are normalized, i.e. the first bit of the mantissa is one, except for zero which is all zeros. 1. What's the smallest difference between two consecutive or adjacent numbers?...
Develop two functions in R, one that generates s^2 using the formation definition, and one that...
Develop two functions in R, one that generates s^2 using the formation definition, and one that calculates s^2 based on the hand calculation equation. Generate data from a normal distribution. Use your functions to calculate s^2 for your generated data. Try this for various variances so that your data become closer and closer to the mean (less variance). What do you find, comment.
Develop two functions in R, one that generates s^2 using the formation definition, and one that...
Develop two functions in R, one that generates s^2 using the formation definition, and one that calculates s^2 based on the hand calculation equation. Generate data from a normal distribution. Use your functions to calculate s^2 for your generated data. Try this for various variances so that your data become closer and closer to the mean (less variance). What do you find, comment.
add the following numbers using 16-bit 2's complement. show all the steps and calculations. Please also...
add the following numbers using 16-bit 2's complement. show all the steps and calculations. Please also show steps to verify that the answer is correct. -7493 and -6372
Write a C program using system call I/O to ****NOTE YOU MUST USE SYSTEM CALL I/O,...
Write a C program using system call I/O to ****NOTE YOU MUST USE SYSTEM CALL I/O, meaning STANDARD I/O IS NOT ALLOWED a) open an existing text file passed to your program as a command-line argument, then b) display the content of the file, c) ask the user what information he/she wants to append d) receive the info from the user via keyboard e) append the info received in d) to the end of the file f) display the updated...
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT