w11 - vhd 0.794
W11 CPU core and support modules
Loading...
Searching...
No Matches
syn Architecture Reference
Architecture >> syn

Processes

proc_ibres  ( IBSEL_CPUERR , IB_MREQ , R_CPUERR )
proc_status  ( CLK )
proc_cpuerr  ( CLK )
proc_state  ( CLK )
proc_next  ( R_STATE , R_STATUS , PSW , CP_CNTL , ID_STAT , R_IDSTAT , IREG , VM_STAT , DP_STAT , R_CPUERR , R_VMSTAT , IB_MREQ , IBSEL_CPUERR , INT_PRI , INT_VECT , ESUSP_I , HBPT )
 !! catch undefined states !!!
proc_cpstat  ( R_STATUS )
proc_snum  ( R_STATE )
proc_vmwait  ( CLK )
proc_snum  ( R_STATE , R_VMWAIT )

Procedures

  do_memread_i(
pnstate: inout state_type
pndpcntl: inout dpath_cntl_type
pnvmcntl: inout vm_cntl_type
pwstate: in state_type
)
  do_memread_d(
pnstate: inout state_type
pnvmcntl: inout vm_cntl_type
pwstate: in state_type
pbytop: in slbit ' 0 '
pmacc: in slbit ' 0 '
pispace: in slbit ' 0 '
pkstack: in slbit ' 0 '
)
  do_memread_srcinc(
pnstate: inout state_type
pndpcntl: inout dpath_cntl_type
pnvmcntl: inout vm_cntl_type
pwstate: in state_type
pnmmumoni: inout mmu_moni_type
pupdt_sp: in slbit ' 0 '
)
  do_memwrite(
pnstate: inout state_type
pnvmcntl: inout vm_cntl_type
pwstate: in state_type
pmacc: in slbit ' 0 '
pispace: in slbit ' 0 '
)
  do_memcheck(
pnstate: inout state_type
pnstatus: inout cpustat_type
pmok: out boolean
)
  do_const_opsize(
pndpcntl: inout dpath_cntl_type
pbytop: in slbit
pisdef: in slbit
pregnum: in slv3
)
  do_fork_dstr( pnstate: inout state_type , pidstat: in decode_stat_type )
  do_fork_opg( pnstate: inout state_type , pidstat: in decode_stat_type )
  do_fork_opa( pnstate: inout state_type , pidstat: in decode_stat_type )
  do_fork_next(
pnstate: inout state_type
pnstatus: inout cpustat_type
pnmmumoni: inout mmu_moni_type
)
  do_fork_next_pref(
pnstate: inout state_type
pnstatus: inout cpustat_type
pndpcntl: inout dpath_cntl_type
pnvmcntl: inout vm_cntl_type
pnmmumoni: inout mmu_moni_type
)
  do_start_vec(
pnstate: inout state_type
pndpcntl: inout dpath_cntl_type
pvector: in slv9_2
)

Constants

ibaddr_cpuerr  slv16 := slv ( to_unsigned ( 8#177766# , 16 ) )
cpuerr_ibf_illhlt  integer := 7
cpuerr_ibf_oddadr  integer := 6
cpuerr_ibf_nxm  integer := 5
cpuerr_ibf_iobto  integer := 4
cpuerr_ibf_ysv  integer := 3
cpuerr_ibf_rsv  integer := 2

Types

state_type  ( s_idle , s_cp_regread , s_cp_rps , s_cp_memr_w , s_cp_memw_w , s_ifetch , s_ifetch_w , s_idecode , s_srcr_def , s_srcr_def_w , s_srcr_inc , s_srcr_inc_w , s_srcr_dec , s_srcr_dec1 , s_srcr_ind , s_srcr_ind1_w , s_srcr_ind2 , s_srcr_ind2_w , s_dstr_def , s_dstr_def_w , s_dstr_inc , s_dstr_inc_w , s_dstr_dec , s_dstr_dec1 , s_dstr_ind , s_dstr_ind1_w , s_dstr_ind2 , s_dstr_ind2_w , s_dstw_def , s_dstw_def_w , s_dstw_inc , s_dstw_inc_w , s_dstw_incdef_w , s_dstw_dec , s_dstw_dec1 , s_dstw_ind , s_dstw_ind_w , s_dstw_def246 , s_dsta_inc , s_dsta_incdef_w , s_dsta_dec , s_dsta_dec1 , s_dsta_ind , s_dsta_ind_w , s_op_halt , s_op_wait , s_op_trap , s_op_reset , s_op_rts , s_op_rts_pop , s_op_rts_pop_w , s_op_spl , s_op_mcc , s_op_br , s_op_mark , s_op_mark1 , s_op_mark_pop , s_op_mark_pop_w , s_op_sob , s_op_sob1 , s_opg_gen , s_opg_gen_rmw_w , s_opg_mul , s_opg_mul1 , s_opg_div , s_opg_div_cn , s_opg_div_cr , s_opg_div_sq , s_opg_div_sr , s_opg_div_quit , s_opg_ash , s_opg_ash_cn , s_opg_ashc , s_opg_ashc_cn , s_opg_ashc_wl , s_opa_jsr , s_opa_jsr1 , s_opa_jsr_push , s_opa_jsr_push_w , s_opa_jsr2 , s_opa_jmp , s_opa_mtp , s_opa_mtp_pop_w , s_opa_mtp_reg , s_opa_mtp_mem , s_opa_mtp_mem_w , s_opa_mfp_reg , s_opa_mfp_mem , s_opa_mfp_mem_w , s_opa_mfp_dec , s_opa_mfp_push , s_opa_mfp_push_w , s_abort_4 , s_abort_10 , s_trap_disp , s_int_ext , s_vec_getpc , s_vec_getpc_w , s_vec_getps , s_vec_getps_w , s_vec_getsp , s_vec_decsp , s_vec_pushps , s_vec_pushps_w , s_vec_pushpc , s_vec_pushpc_w , s_rti_getpc , s_rti_getpc_w , s_rti_getps , s_rti_getps_w , s_rti_newpc , s_vmerr , s_cpufail )

Signals

R_STATE  state_type := s_idle
N_STATE  state_type
R_STATUS  cpustat_type := cpustat_init
N_STATUS  cpustat_type := cpustat_init
R_CPUERR  cpuerr_type := cpuerr_init
N_CPUERR  cpuerr_type := cpuerr_init
R_IDSTAT  decode_stat_type := decode_stat_init
N_IDSTAT  decode_stat_type := decode_stat_init
R_VMSTAT  vm_stat_type := vm_stat_init
IBSEL_CPUERR  slbit := ' 0 '
VM_CNTL_L  vm_cntl_type := vm_cntl_init
R_VMWAIT  slbit := ' 0 '

Attributes

fsm_encoding  string
fsm_encoding  signal is " one_hot "

Instantiations

sel  ib_sel <Entity ib_sel>

Detailed Description

Definition at line 130 of file pdp11_sequencer.vhd.

Member Function/Procedure/Process Documentation

◆ proc_ibres()

proc_ibres (   IBSEL_CPUERR,
  IB_MREQ,
  R_CPUERR 
)

Definition at line 300 of file pdp11_sequencer.vhd.

◆ proc_status()

proc_status (   CLK  
)
Process

Definition at line 317 of file pdp11_sequencer.vhd.

◆ proc_cpuerr()

proc_cpuerr (   CLK  
)
Process

Definition at line 333 of file pdp11_sequencer.vhd.

◆ proc_state()

proc_state (   CLK  
)
Process

Definition at line 344 of file pdp11_sequencer.vhd.

◆ do_memread_i()

do_memread_i (   pnstate inout state_type ,
  pndpcntl inout dpath_cntl_type ,
  pnvmcntl inout vm_cntl_type ,
  pwstate in state_type  
)
Procedure

Definition at line 397 of file pdp11_sequencer.vhd.

◆ do_memread_d()

do_memread_d (   pnstate inout state_type ,
  pnvmcntl inout vm_cntl_type ,
  pwstate in state_type ,
  pbytop in slbit ' 0 ' ,
  pmacc in slbit ' 0 ' ,
  pispace in slbit ' 0 ' ,
  pkstack in slbit ' 0 '  
)
Procedure

Definition at line 409 of file pdp11_sequencer.vhd.

◆ do_memread_srcinc()

do_memread_srcinc (   pnstate inout state_type ,
  pndpcntl inout dpath_cntl_type ,
  pnvmcntl inout vm_cntl_type ,
  pwstate in state_type ,
  pnmmumoni inout mmu_moni_type ,
  pupdt_sp in slbit ' 0 '  
)
Procedure

Definition at line 425 of file pdp11_sequencer.vhd.

◆ do_memwrite()

do_memwrite (   pnstate inout state_type ,
  pnvmcntl inout vm_cntl_type ,
  pwstate in state_type ,
  pmacc in slbit ' 0 ' ,
  pispace in slbit ' 0 '  
)
Procedure

Definition at line 450 of file pdp11_sequencer.vhd.

◆ do_memcheck()

do_memcheck (   pnstate inout state_type ,
  pnstatus inout cpustat_type ,
  pmok out boolean  
)
Procedure

Definition at line 464 of file pdp11_sequencer.vhd.

◆ do_const_opsize()

do_const_opsize (   pndpcntl inout dpath_cntl_type ,
  pbytop in slbit ,
  pisdef in slbit ,
  pregnum in slv3  
)
Procedure

Definition at line 486 of file pdp11_sequencer.vhd.

◆ do_fork_dstr()

do_fork_dstr (   pnstate inout state_type ,
  pidstat in decode_stat_type  
)
Procedure

Definition at line 500 of file pdp11_sequencer.vhd.

◆ do_fork_opg()

do_fork_opg (   pnstate inout state_type ,
  pidstat in decode_stat_type  
)
Procedure

Definition at line 512 of file pdp11_sequencer.vhd.

◆ do_fork_opa()

do_fork_opa (   pnstate inout state_type ,
  pidstat in decode_stat_type  
)
Procedure

Definition at line 529 of file pdp11_sequencer.vhd.

◆ do_fork_next()

do_fork_next (   pnstate inout state_type ,
  pnstatus inout cpustat_type ,
  pnmmumoni inout mmu_moni_type  
)
Procedure

Definition at line 542 of file pdp11_sequencer.vhd.

◆ do_fork_next_pref()

do_fork_next_pref (   pnstate inout state_type ,
  pnstatus inout cpustat_type ,
  pndpcntl inout dpath_cntl_type ,
  pnvmcntl inout vm_cntl_type ,
  pnmmumoni inout mmu_moni_type  
)
Procedure

Definition at line 563 of file pdp11_sequencer.vhd.

◆ do_start_vec()

do_start_vec (   pnstate inout state_type ,
  pndpcntl inout dpath_cntl_type ,
  pvector in slv9_2  
)
Procedure

Definition at line 591 of file pdp11_sequencer.vhd.

◆ proc_next()

proc_next (   R_STATE ,
  R_STATUS ,
  PSW ,
  CP_CNTL ,
  ID_STAT ,
  R_IDSTAT ,
  IREG ,
  VM_STAT ,
  DP_STAT ,
  R_CPUERR ,
  R_VMSTAT ,
  IB_MREQ ,
  IBSEL_CPUERR ,
  INT_PRI ,
  INT_VECT ,
  ESUSP_I ,
  HBPT  
)
Process

!! catch undefined states !!!

◆ proc_cpstat()

proc_cpstat (   R_STATUS  
)
Process

Definition at line 2510 of file pdp11_sequencer.vhd.

◆ proc_snum() [1/2]

proc_snum (   R_STATE  
)
Process

Definition at line 2530 of file pdp11_sequencer.vhd.

◆ proc_vmwait()

proc_vmwait (   CLK  
)
Process

Definition at line 2675 of file pdp11_sequencer.vhd.

◆ proc_snum() [2/2]

proc_snum (   R_STATE ,
  R_VMWAIT  
)
Process

Definition at line 2690 of file pdp11_sequencer.vhd.

Member Data Documentation

◆ ibaddr_cpuerr

ibaddr_cpuerr slv16 := slv ( to_unsigned ( 8#177766# , 16 ) )
Constant

Definition at line 132 of file pdp11_sequencer.vhd.

◆ cpuerr_ibf_illhlt

cpuerr_ibf_illhlt integer := 7
Constant

Definition at line 134 of file pdp11_sequencer.vhd.

◆ cpuerr_ibf_oddadr

cpuerr_ibf_oddadr integer := 6
Constant

Definition at line 135 of file pdp11_sequencer.vhd.

◆ cpuerr_ibf_nxm

cpuerr_ibf_nxm integer := 5
Constant

Definition at line 136 of file pdp11_sequencer.vhd.

◆ cpuerr_ibf_iobto

cpuerr_ibf_iobto integer := 4
Constant

Definition at line 137 of file pdp11_sequencer.vhd.

◆ cpuerr_ibf_ysv

cpuerr_ibf_ysv integer := 3
Constant

Definition at line 138 of file pdp11_sequencer.vhd.

◆ cpuerr_ibf_rsv

cpuerr_ibf_rsv integer := 2
Constant

Definition at line 139 of file pdp11_sequencer.vhd.

◆ state_type

state_type ( s_idle , s_cp_regread , s_cp_rps , s_cp_memr_w , s_cp_memw_w , s_ifetch , s_ifetch_w , s_idecode , s_srcr_def , s_srcr_def_w , s_srcr_inc , s_srcr_inc_w , s_srcr_dec , s_srcr_dec1 , s_srcr_ind , s_srcr_ind1_w , s_srcr_ind2 , s_srcr_ind2_w , s_dstr_def , s_dstr_def_w , s_dstr_inc , s_dstr_inc_w , s_dstr_dec , s_dstr_dec1 , s_dstr_ind , s_dstr_ind1_w , s_dstr_ind2 , s_dstr_ind2_w , s_dstw_def , s_dstw_def_w , s_dstw_inc , s_dstw_inc_w , s_dstw_incdef_w , s_dstw_dec , s_dstw_dec1 , s_dstw_ind , s_dstw_ind_w , s_dstw_def246 , s_dsta_inc , s_dsta_incdef_w , s_dsta_dec , s_dsta_dec1 , s_dsta_ind , s_dsta_ind_w , s_op_halt , s_op_wait , s_op_trap , s_op_reset , s_op_rts , s_op_rts_pop , s_op_rts_pop_w , s_op_spl , s_op_mcc , s_op_br , s_op_mark , s_op_mark1 , s_op_mark_pop , s_op_mark_pop_w , s_op_sob , s_op_sob1 , s_opg_gen , s_opg_gen_rmw_w , s_opg_mul , s_opg_mul1 , s_opg_div , s_opg_div_cn , s_opg_div_cr , s_opg_div_sq , s_opg_div_sr , s_opg_div_quit , s_opg_ash , s_opg_ash_cn , s_opg_ashc , s_opg_ashc_cn , s_opg_ashc_wl , s_opa_jsr , s_opa_jsr1 , s_opa_jsr_push , s_opa_jsr_push_w , s_opa_jsr2 , s_opa_jmp , s_opa_mtp , s_opa_mtp_pop_w , s_opa_mtp_reg , s_opa_mtp_mem , s_opa_mtp_mem_w , s_opa_mfp_reg , s_opa_mfp_mem , s_opa_mfp_mem_w , s_opa_mfp_dec , s_opa_mfp_push , s_opa_mfp_push_w , s_abort_4 , s_abort_10 , s_trap_disp , s_int_ext , s_vec_getpc , s_vec_getpc_w , s_vec_getps , s_vec_getps_w , s_vec_getsp , s_vec_decsp , s_vec_pushps , s_vec_pushps_w , s_vec_pushpc , s_vec_pushpc_w , s_rti_getpc , s_rti_getpc_w , s_rti_getps , s_rti_getps_w , s_rti_newpc , s_vmerr , s_cpufail )
Type

Definition at line 141 of file pdp11_sequencer.vhd.

◆ R_STATE

R_STATE state_type := s_idle
Signal

Definition at line 269 of file pdp11_sequencer.vhd.

◆ N_STATE

Definition at line 270 of file pdp11_sequencer.vhd.

◆ fsm_encoding [1/2]

fsm_encoding string
Attribute

Definition at line 272 of file pdp11_sequencer.vhd.

◆ fsm_encoding [2/2]

fsm_encoding signal is " one_hot "
Attribute

Definition at line 273 of file pdp11_sequencer.vhd.

◆ R_STATUS

R_STATUS cpustat_type := cpustat_init
Signal

Definition at line 275 of file pdp11_sequencer.vhd.

◆ N_STATUS

N_STATUS cpustat_type := cpustat_init
Signal

Definition at line 276 of file pdp11_sequencer.vhd.

◆ R_CPUERR

R_CPUERR cpuerr_type := cpuerr_init
Signal

Definition at line 277 of file pdp11_sequencer.vhd.

◆ N_CPUERR

N_CPUERR cpuerr_type := cpuerr_init
Signal

Definition at line 278 of file pdp11_sequencer.vhd.

◆ R_IDSTAT

R_IDSTAT decode_stat_type := decode_stat_init
Signal

Definition at line 280 of file pdp11_sequencer.vhd.

◆ N_IDSTAT

N_IDSTAT decode_stat_type := decode_stat_init
Signal

Definition at line 281 of file pdp11_sequencer.vhd.

◆ R_VMSTAT

R_VMSTAT vm_stat_type := vm_stat_init
Signal

Definition at line 283 of file pdp11_sequencer.vhd.

◆ IBSEL_CPUERR

IBSEL_CPUERR slbit := ' 0 '
Signal

Definition at line 285 of file pdp11_sequencer.vhd.

◆ VM_CNTL_L

VM_CNTL_L vm_cntl_type := vm_cntl_init
Signal

Definition at line 287 of file pdp11_sequencer.vhd.

◆ R_VMWAIT

R_VMWAIT slbit := ' 0 '
Signal

Definition at line 2672 of file pdp11_sequencer.vhd.

◆ sel

sel ib_sel
Instantiation

Definition at line 298 of file pdp11_sequencer.vhd.


The documentation for this design unit was generated from the following file: