CDL Modules
Files
de1_cl_controls

Files

file  bbc_micro_de1_cl.cdl
 BBC microcomputer with RAMs for the CL DE1 + daughterboard.
 

Detailed Description

Modules

module de1_cl_controls::de1_cl_controls ( clock  clk,
input bit  reset_n,
output t_de1_cl_inputs_control  inputs_control,
input t_de1_cl_inputs_status  inputs_status,
output t_de1_cl_user_inputs  user_inputs,
input bit  sr_divider[8] 
)

This module manages the buttons and other controls on the Cambridge University Computer Laboratory DE1 daughterboard.

A number of input switches are handled through a shift register, which is clocked using the input clock 'clk' divided down by the divider. This is handled by

The rotary encoder switch '318-ENC130175F-12PS' available from Mouser has the following operation:

Clockwise: B disconnects from C when A is disconnected from C

Counter-clockwise: B connects to C when A is disconnected from C

The CL daughterboard for the DE1 has a debounce RC network on the A and B pins, with a RC (probably) of 47us (high), so presumably the encoder is not optical :-).

Parameters
[in]clksystem clock - not the shift register pin, something faster
[in]reset_nasync reset
[out]inputs_controlSignals to the shift register etc on the DE1 CL daughterboard
[in]inputs_statusSignals from the shift register, rotary encoders, etc on the DE1 CL daughterboard
[out]user_inputs
[in]sr_dividerclock divider to control speed of shift register