CDL Modules
Data Structures | Namespaces | Enumerations
bbc_floppy_sram.cdl File Reference

BBC micro floppy to SRAM read/write interface module. More...

Detailed Description

BBC micro floppy to SRAM read/write interface module.

Copyright (C) 2016-2017, Gavin J Stark. All rights reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

CDL implementation of a module to map from the t_bbc_floppy_op/response (interface to a floppy disk drive) and an SRAM read/write interface, so that a floppy may be emulated in an FPGA (or simulation).

This module needs an update to implement the 'csr interface' to permit setting up of the SRAM base addresses and so on, that help describe the floppy. Currently these values are hard-coded.

Data Structures

struct  bbc_floppy_sram::t_sram_combs
 
struct  bbc_floppy_sram::t_sram_state
 
struct  bbc_floppy_sram::t_floppy_state
 
struct  bbc_floppy_sram::t_floppy_combs
 
struct  bbc_floppy_sram::t_drive_combs
 
struct  bbc_floppy_sram::t_drive_state
 
struct  bbc_floppy_sram::t_floppy_disk_state
 

Namespaces

 bbc_floppy_sram
 

Enumerations

enum  bbc_floppy_sram::t_floppy_fsm {
  bbc_floppy_sram::floppy_fsm_idle,
  bbc_floppy_sram::floppy_fsm_read_data_prepare_sram_request,
  bbc_floppy_sram::floppy_fsm_read_data_sram_requesting,
  bbc_floppy_sram::floppy_fsm_read_data_sram_wait_for_data,
  bbc_floppy_sram::floppy_fsm_read_data_present_data,
  bbc_floppy_sram::floppy_fsm_read_id_prepare_sram_request,
  bbc_floppy_sram::floppy_fsm_read_id_sram_requesting,
  bbc_floppy_sram::floppy_fsm_read_id_sram_wait_for_data,
  bbc_floppy_sram::floppy_fsm_read_id_present_data
}
 
enum  bbc_floppy_sram::t_floppy_fsm_request {
  bbc_floppy_sram::floppy_fsm_request_none,
  bbc_floppy_sram::floppy_fsm_request_read_id,
  bbc_floppy_sram::floppy_fsm_request_read_data
}