LOGIN   :::   RECOVER PASS   :::   GET ACCOUNT    
Browse
  • Projects
  • Code (CVS)
  • Forums
  • News
  • Articles
  • Polls
  •  
    OpenCores
  • FAQ
  • CVS HowTo
  • Mission
  • Media
  • Tools
  • Advertise
  • Mirrors
  • Logos
  • Contact us
  • Job Opportunity
  •  
    Tools
  • Search
      
  • Download Cores (CVSGet)
  •  
    More
  • Wishbone
  • Perlilog
  • EDA tools
  • OpenTech CD
  •  
    Navigation: All forums > Cvs-checkins > Message List > Message Post

    Message

    Reply | Reply all
    Date Prev | Date Next | Thread Prev | Thread Next Date Index | Thread Index

    From: cvs at opencores.org<cvs@o...>
    Date: Thu Jan 25 01:19:41 CET 2007
    Subject: [cvs-checkins] MODIFIED: rise ...
    Top
    Date: 00/07/01 25:01:19

    Modified: rise/vhdl if_stage.vhd
    Log:
    Added second test program for testing uart.


    Revision Changes Path
    1.14 rise/vhdl/if_stage.vhd

    http://www.opencores.org/cvsweb.shtml/rise/vhdl/if_stage.vhd.diff?r1=1.13&r2=1.14

    (In the diff below, changes in quantity of whitespace are not shown.)

    Index: if_stage.vhd
    ===================================================================
    RCS file: /cvsroot/jlechner/rise/vhdl/if_stage.vhd,v
    retrieving revision 1.13
    retrieving revision 1.14
    diff -u -b -r1.13 -r1.14
    --- if_stage.vhd 24 Jan 2007 22:21:16 -0000 1.13
    +++ if_stage.vhd 25 Jan 2007 00:19:40 -0000 1.14
    @@ -206,45 +206,80 @@



    --- UART sample
    +-- UART sample 1
    +
    +-- process (cur_pc)
    +-- begin
    +-- case cur_pc is
    +-- when x"0000" => if_id_register_next.ir <= x"8800"; -- ld R8,#0x0
    +-- when x"0002" => if_id_register_next.ir <= x"9880"; -- ldhb R8,#0x80
    +-- when x"0004" => if_id_register_next.ir <= x"8901"; -- ld R9,#0x1
    +-- when x"0006" => if_id_register_next.ir <= x"9980"; -- ldhb R9,#0x80
    +-- when x"0008" => if_id_register_next.ir <= x"8b10"; -- ld R11,#0x10
    +
    +-- when x"000A" => if_id_register_next.ir <= x"9b00"; -- ldhb R11,#0x0
    +-- when x"000C" => if_id_register_next.ir <= x"8c1c"; -- ld R12,#0x1c
    +-- when x"000E" => if_id_register_next.ir <= x"9c00"; -- ldhb R12,#0x0
    +-- when x"0010" => if_id_register_next.ir <= x"70c0"; -- jmp R12 (test)
    +
    +-- when x"0012" => if_id_register_next.ir <= x"8302"; -- ld R3,#0x2
    +-- when x"0014" => if_id_register_next.ir <= x"4823"; -- and R2,R3
    +-- when x"0016" => if_id_register_next.ir <= x"72b0"; -- jmpz R11
    +-- when x"0018" => if_id_register_next.ir <= x"a049"; -- ld R4,[R9]
    +
    +-- when x"001A" => if_id_register_next.ir <= x"1841"; -- add R4,#0x1
    +-- when x"001C" => if_id_register_next.ir <= x"a028"; -- ld R2,[R8]
    +-- when x"001E" => if_id_register_next.ir <= x"8301"; -- ld R3,#0x1
    +-- when x"0020" => if_id_register_next.ir <= x"4823"; -- and R2,R3
    +
    +-- when x"0022" => if_id_register_next.ir <= x"72c0"; -- jmpz R12
    +
    +-- when x"0024" => if_id_register_next.ir <= x"8441"; --ld R4,#0x41 (test)
    +
    +-- when x"0028" => if_id_register_next.ir <= x"e049"; -- st R4,[R9]
    +
    +-- when x"002A" => if_id_register_next.ir <= x"70c0"; -- jmp R12 (test)
    +-- when others => if_id_register_next.ir <= x"0000"; -- nop
    +-- end case;
    +-- end process;

    process (cur_pc)
    begin
    case cur_pc is
    + -- initialisation
    when x"0000" => if_id_register_next.ir <= x"8800"; -- ld R8,#0x0
    when x"0002" => if_id_register_next.ir <= x"9880"; -- ldhb R8,#0x80
    when x"0004" => if_id_register_next.ir <= x"8901"; -- ld R9,#0x1
    when x"0006" => if_id_register_next.ir <= x"9980"; -- ldhb R9,#0x80
    when x"0008" => if_id_register_next.ir <= x"8b10"; -- ld R11,#0x10
    -
    when x"000A" => if_id_register_next.ir <= x"9b00"; -- ldhb R11,#0x0
    when x"000C" => if_id_register_next.ir <= x"8c1c"; -- ld R12,#0x1c
    when x"000E" => if_id_register_next.ir <= x"9c00"; -- ldhb R12,#0x0
    - when x"0010" => if_id_register_next.ir <= x"70c0"; -- jmp R12 (test)
    -
    - -- when x"0010" => if_id_register_next.ir <= x"a028"; -- ld R2,[R8]

    + -- check uart data available
    + when x"0010" => if_id_register_next.ir <= x"a028"; -- ld R2,[R8]
    when x"0012" => if_id_register_next.ir <= x"8302"; -- ld R3,#0x2
    when x"0014" => if_id_register_next.ir <= x"4823"; -- and R2,R3
    when x"0016" => if_id_register_next.ir <= x"72b0"; -- jmpz R11
    - when x"0018" => if_id_register_next.ir <= x"a049"; -- ld R4,[R9]

    + -- get add from uart, inc. by one
    + when x"0018" => if_id_register_next.ir <= x"a049"; -- ld R4,[R9]
    when x"001A" => if_id_register_next.ir <= x"1841"; -- add R4,#0x1
    +
    + -- wait for uarts transmitter register empty
    when x"001C" => if_id_register_next.ir <= x"a028"; -- ld R2,[R8]
    when x"001E" => if_id_register_next.ir <= x"8301"; -- ld R3,#0x1
    when x"0020" => if_id_register_next.ir <= x"4823"; -- and R2,R3
    -
    when x"0022" => if_id_register_next.ir <= x"72c0"; -- jmpz R12

    - when x"0024" => if_id_register_next.ir <= x"8441"; --ld R4,#0x41 (test)
    -
    - when x"0028" => if_id_register_next.ir <= x"e049"; -- st R4,[R9]
    + -- send data + when x"0024" => if_id_register_next.ir <= x"e049"; -- st R4,[R9] + when x"0026" => if_id_register_next.ir <= x"70b0"; -- jmp R11 when others => if_id_register_next.ir <= x"0000"; -- nop end case; end process; - end if_state_behavioral;

     
    Copyright (c) 1999 OPENCORES.ORG. All rights reserved.