SH7734 グループ イーサネット受信設定例 アプリケーションノート

Similar documents
SH7734グループ SH7734初期設定例 アプリケーションノート

SH7216 グループ USB ファンクションモジュール USB コミュニケーションクラス アプリケーションノート

SH7730グループ アプリケーションノート BSC バイト選択付きSRAM設定例

RXファミリ 多重割り込みの使い方 アプリケーションノート

A Responsive Processor for Parallel/Distributed Real-time Processing

SH7734 グループ シリアルフラッシュメモリからのブート例 アプリケーションノート

RX62N グループ SCI を使ったクロック同期式シングルマスタ制御ソフトウェア

SH7670グループ DMAC 内蔵モジュールへの転送例

R1EV5801MBシリーズ データシート

IICシングルマスタ送受信制御例 (EEPROM ライト・リード)

HN58V256Aシリーズ/HN58V257Aシリーズ データシート

HN58C256A シリーズ/HN58C257A シリーズ データシート

スライド 1

RX600 & RX200シリーズ アプリケーションノート RX用仮想EEPROM

スライド 1

SH7786 INTC CPU間割り込み使用例

V850E2/ML4 マイクロコンピュータ Peripheral LibUSB Demo アプリケーションノート

SH7786 DMAC転送例:アプリケーションノート

【注意事項】RXファミリ 組み込み用TCP/IP M3S-T4-Tiny

untitled

Nios® II HAL API を使用したソフトウェア・サンプル集 「Modular Scatter-Gather DMA Core」

Copyright 2006 KDDI Corporation. All Rights Reserved page1

Ethernet 2 TOKAI Communications Corporation

R1LV1616H-I シリーズ

thesis.dvi

プロセッサ・アーキテクチャ

R1LV0416Dシリーズ データシート

main01a.dvi

00-COVER.P65

スライド 1

RNA51xxシリーズ データシート

untitled

PSG共通フォーマットv110

SH-4 組み込み用TCP/IP M3S-T4-Tiny: 導入ガイド

RX600 & RX200シリーズ RX用シンプルフラッシュAPI アプリケーションノート

【注意事項】RX Driver Package、 RXファミリ RTC モジュール Firmware Integration Technology

2 PC [1], [2], [3] 2.1 OS 2.1 ifconfig 2.1 lo ifconfig -a 2.1 enp1s0, enx0090cce7c734, lo 3 enp1s0 enx0090cce7c734 PC 2.1 (eth0, eth1) PC 14

total-all-nt.dvi

相続支払い対策ポイント

150423HC相続資産圧縮対策のポイント

ハピタス のコピー.pages

Copyright 2008 All Rights Reserved 2

$ ifconfig lo Link encap: inet : : inet6 : ::1/128 : UP LOOPBACK RUNNING MTU:65536 :1 RX :8 :0 :0 :0 :0 TX :8 :0 :0 :0 :0 (Collision


SHコンパイラ アプリケーションノート 1-導入ガイド: スタートアップルーチンガイド SH-1, SH-2, SH-2A編

TM-m30 詳細取扱説明書

ネットワーク設定マニュアル(Windows Vista編)

XAPP858 - High-Performance DDR2 SDRAM Interface In Virtex-5 Devices

Express5800/140Hb (2002/01/22)

Copyright 2008 NIFTY Corporation All rights reserved. 2

DA100データアクイジションユニット通信インタフェースユーザーズマニュアル

KDDI

PLQ-20 取扱説明書 詳細編

PBASIC 2.5 PBASIC 2.5 $PBASIC directive PIN type New DEBUG control characters DEBUGIN Line continuation for comma-delimited lists IF THEN ELSE * SELEC

特集新世代マイクロプロセッサアーキテクチャ ( 後編 ) 3. 実例 3 ユビキタス コンピューティング時代の組み込みマイクロコンピュータ, SuperH と M32R 清水徹 * 1 長谷川淳 * 2 服部俊洋 * 3 近藤弘郁 * 4 ( 株 ) ルネサステクノロジシステムソリューション統括本部

Java演習(4) -- 変数と型 --

64bit SSE2 SSE2 FPU Visual C++ 64bit Inline Assembler 4 FPU SSE2 4.1 FPU Control Word FPU 16bit R R R IC RC(2) PC(2) R R PM UM OM ZM DM IM R: reserved

tutorial_lc.dvi

NEC Storage series NAS Device

1000 Copyright(C)2009 All Rights Reserved - 2 -

本機をお使いの方へ

untitled

N Express5800/R320a-E4 N Express5800/R320a-M4 ユーザーズガイド

Express5800/R320a-E4, Express5800/R320b-M4ユーザーズガイド

2

USB FDD ユーザーズマニュアル

1

SH-2, SH-2A 固定小数点ライブラリ (Ver. 1.02) 活用ガイド<コンパイラ活用ガイド>

PC Windows 95, Windows 98, Windows NT, Windows 2000, MS-DOS, UNIX CPU

LP-M8040シリーズ

Express5800/320Fc-MR

SerialATA ATA Embedded Clocking 8B10B coding 2 pair Hot Plug ATA ATA (150MB/s ) 10 roadmap 2004/2/17 SATA Overview Page 2

untitled

Audiophile USB

初心者にもできるアメブロカスタマイズ新2016.pages

4

Express5800/140Ma

Transcription:

R01AN0898JJ0100 Rev.1.00 SH7734 R01AN0665JJ R01AN0665JJ SH7734 1.... 2 2.... 3 3.... 3 4.... 4 5.... 6 6.... 24 7.... 24 R01AN0898JJ0100 Rev.1.00 Page 1 of 25

1. GETHER MAC Media Access Control E-DMAC 1.2 SFD CRC DDR2-SDRAM GMII Gigabit Media Independent InterfaceMII Media Independent InterfaceRMII Reduced Media independent Interface RMII R01UH0233JJ GETHER MAC E-DMAC 10/100Mbps GETHER GMII 1000Mbps MII 10/100Mbps TSU CAM Magic Packet 1.1 GETHER LSI PHY-LSI MAC E-DMAC R01UH0233JJ GETHER SH7734 MAC 00-01-02-03-04-05 ) 00-0E-35-18-34- FA( ) 1.1 7 1 6 6 2 46 1500 4 SFD MAC MAC / CRC 60 1514 1.2 R01AN0898JJ0100 Rev.1.00 Page 2 of 25

2. 2.1 SH7734 R8A77343 EXTAL : 33.3333MHz CPU clki400mhz SHwy clks200mhz SHwy clks1100mhz DDR MCK0/MCK0#/MCK1/MCK1#200MHz clkb50mhz clkp50mhz IO supply power(3.3v) Core supply power(1.25v) High-performance Embedded Workshop (Version 4.08.00.011) C C/C++ Compiler Package for SuperH Family (V.9.04 release00) -cpu=sh4a -endian=little -include="$(projdir) inc" -change_message=warning -object="$(configdir) $(FILELEAF).obj" -debug -optimize=0 -gbr=auto -chgincpath -errorpath -global_volatile=0 -opt_range=all -infinite_loop=0 -del_vacant_loop=0 -struct_alloc=1 -nologo Ver 1.00 CS0 29 MMU WDT SH7734 R0P7734C00000RZ 3. R01AN0665JJ R01AN0895JJ R01AN0898JJ0100 Rev.1.00 Page 3 of 25

4. 4.1 4.1 RMII PHY-LSI LAN88710AM SMSC SH7734 R0P7734C00000RZ 4.1 PHY-LSI RMII R01AN0898JJ0100 Rev.1.00 Page 4 of 25

4.2 4.1 4.1 RMII0_MDC RMII RMII0_MDIO RMII RMII0_CRS_DV RMII RMII0_RX_ER RMII RMII0_RXD0 RMII RMII0_RXD1 RMII RMII0_TXD_EN RMII RMII0_TXD0 RMII RMII0_TXD1 RMII REF50CK 50MHz R01AN0898JJ0100 Rev.1.00 Page 5 of 25

5. 5.1 5.1 GETHER 10 5.1 R01AN0898JJ0100 Rev.1.00 Page 6 of 25

5.2 5.1 R01AN0665JJ 5.1 sh7734_main.c r_ether.c r_phy.c PHY-LSI dbsct.c intprg.c r_ether.h r_phy.h PHY-LSI typedefine.h vecttbl.src R01AN0898JJ0100 Rev.1.00 Page 7 of 25

5.3 5.2 5.2 NUM_OF_USER_BUFFER 10 NUM_OF_TX_DESCRIPTOR 8 NUM_OF_RX_DESCRIPTOR 8 NUM_OF_TX_BUFFER 8 NUM_OF_RX_BUFFER 8 SIZE_OF_BUFFER 1600 MIN_FRAME_SIZE 60 MAX_FRAME_SIZE 1514 LOOP_100us 6700 100 s EDMAC_EESIPR_INI_SEND H 2428 0700 GETHER EESIPR EDMAC_EESIPR_INI_RECV H 0205 001F GETHER EESIPR EDMAC_EESIPR_INI_EtherC H 0040 0000 GETHER EESIPR E-MAC E-MAC EtherC_ECSIPR_INI H 0000 0004 GETHER ECSIPR R01AN0665JJ R01AN0898JJ0100 Rev.1.00 Page 8 of 25

5.4 5.2 /* ==== Transmit descriptor ==== */ typedef union { uint32_t LONG; struct{ uint32_t TACT:1; /* Transmit descriptor enabled */ uint32_t TDLE:1; /* End of transmit descriptor */ uint32_t TFP :2; /* Location 1, 0 within transmit frame */ uint32_t TFE :1; /* Transmit frame error */ uint32_t TWBI :1; /* Write-back completion interrupt notification */ uint32_t reserved1 :16; /* Reserved */ uint32_t TFS9:1; /* Transmit FIFO underflow (TCU bit in EESR) */ uint32_t TFS8:1; /* Transmit abort detect (TABT bit in EESR) */ uint32_t reserved2 :8; /* Reserved */ }BIT; } td0_t; typedef struct { #if defined(_big) uint16_t TDL; /* Transmit buffer data length (Big endian) */ uint16_t reserved; #else uint16_t reserved; uint16_t TDL; /* Transmit buffer data length (Little endian) */ #endif } td1_t; typedef struct { uint8_t *TBA; /* Address of transmit buffer */ } td2_t; typedef struct tag_edmac_send_desc { td0_t td1_t td2_t struct td0; td1; td2; tag_edmac_send_desc *pnext; } edmac_send_desc_t; /* ==== Receive descriptor ==== */ typedef union R01AN0898JJ0100 Rev.1.00 Page 9 of 25

{ uint32_t LONG; struct{ uint32_t RACT:1; /* Receive descriptor enabled */ uint32_t RDLE:1; /* End of receive descriptor */ uint32_t RFP :2; /* Location 1,0 within receive frame */ uint32_t RFE :1; /* Receive frame error */ uint32_t PV :1; /* Padding insertion */ uint32_t reserved1:16; /* Reserved */ uint32_t RFS9:1; /* Receive FIFO overflow (RFOF bit in EESR) */ uint32_t RFS8:1; /* Receive abort detect (RABT bit in EESR) */ uint32_t RFS7:1; /* Receive multicast frames (RMAF bit in EESR) */ uint32_t RFS6:1; /* Carrier extension error (CEEF bit in EESR) */ uint32_t RFS5:1; /* Carrier extension loss (CELF bit in EESR) */ uint32_t RFS4:1; /* Residual bits frame receive error (RRF bit in EESR) */ uint32_t RFS3:1; /* Long frame receive error (RTLE bit in EESR) */ uint32_t RFS2:1; /* Short frame receive error (RTSF bit in EESR) */ uint32_t RFS1:1; /* PHY-LSI receive error (PRE bit in EESR) */ uint32_t RFS0:1; /* Receive frame CRC error detected (CERF bit in EESR) */ }BIT; } rd0_t; typedef struct { #if defined(_big) uint16_t RBL; /* Receive buffer length (Big endian) */ uint16_t RDL; /* Receive data length (Big endian) */ #else uint16_t RDL; /* Receive data length (Little endian) */ uint16_t RBL; /* Receive buffer length (Little endian) */ #endif } rd1_t; typedef struct { uint8_t *RBA; /* Receive buffer address */ } rd2_t; typedef struct tag_edmac_recv_desc { rd0_t rd1_t rd2_t rd0; rd1; rd2; struct tag_edmac_recv_desc *pnext; } edmac_recv_desc_t; /* ==== The whole transmit/receive descriptors (must be allocated in 16-byte boundaries) ==== */ R01AN0898JJ0100 Rev.1.00 Page 10 of 25

typedef struct { edmac_send_desc_t send[num_of_tx_descriptor]; edmac_recv_desc_t recv[num_of_rx_descriptor]; edmac_send_desc_t *psend_top; /* Registration location of transmit descriptors */ edmac_recv_desc_t *precv_end; /* Registration location and reception end of transmit descriptors */ } txrx_descriptor_set_t; /* ==== Transmit/receive buffers (must be allocated in 32-byte boundaries) ==== */ /* ---- Definition of all transmit/receive buffer areas ---- */ typedef struct { uint8_t send[num_of_tx_buffer][size_of_buffer]; uint8_t recv[num_of_rx_buffer][size_of_buffer]; } txrx_buffer_set_t; typedef struct { uint8_t frame[size_of_buffer]; uint32_t len; uint8_t wk[12]; } USER_BUFFER; 5.2 5.5 5.3 5.3 static 5.3 static static uint8_t mac_addr MAC R_Ether_Open static USER_BUFFER recv R_Ether_Read static volatile txrx_descriptor_set_t eth_desc R_Ether_Read lan_desc_create static volatile txrx_buffer_set_t eth_buf lan_desc_create 5.6 5.4 5.4 R_Ether_Open R_Ether_Read R_Ether_Close GETHER GETHER GETHER R01AN0898JJ0100 Rev.1.00 Page 11 of 25

5.7 R_Ether_Open GETHER r_ether.h int R_Ether_Open(uint32_t ch, uint8_t mac_addr[]) GETHER uint32_t ch E-MAC uint8_t mac_addr[] E-MAC MAC [R_ETHER_OK(0)] [R_ETHER_ERROR(-1)] MAC GETHER MAC 0 EEPROM 1 E-MAC 0 R_Ether_Read r_ether.h int R_Ether_Read(uint32_t ch, void *buf ) E-DMAC uint32_t ch void *buf E-MAC (0) [R_ETHER_ERROR(-1)] [R_ETHER_HARD_ERROR(-3) [R_ETHER_RECOVERABLE(-4) [R_ETHER_NODATA(-5) R_ETHER_HARD_ERROR(-3) R_ETHER_RECOVERABLE(-4) 1 E-MAC 0 R_Ether_Close GETHER r_ether.h int R_Ether_Close(uint32_t ch ) GETHER uint32_t ch E-MAC [R_ETHER_OK(0)] [R_ETHER_ERROR(-1)] R_ETHER_ERROR(-1) 1 E-MAC 0 R01AN0898JJ0100 Rev.1.00 Page 12 of 25

5.8 5.8.1 5.3 5.3 R01AN0898JJ0100 Rev.1.00 Page 13 of 25

5.8.2 GETHER 5.4 GETHER R_Ether_Open GETHER E-MAC/E-DMAC lan_reg_reset() lan_desc_create() MAC phy_autonego() no yes E-MAC/E-DMAC lan_reg_set() return(r_ether_ok) return(r_ether_error) 5.4 GETHER R01AN0898JJ0100 Rev.1.00 Page 14 of 25

5.8.3 GETHER 5.5 GETHER R_Ether_Close E-MAC/E-DMAC lan_reg_reset() GETHER GETHER return(r_ether_ok) 5.5 GETHER R01AN0898JJ0100 Rev.1.00 Page 15 of 25

5.8.4 GETHER 5.6 GETHER R_Ether_Read no yes Return(R_ETHER_NODATA) no yes R_ETHER_ERROR -1 no yes return 5.6 GETHER R01AN0898JJ0100 Rev.1.00 Page 16 of 25

5.8.5 E-MAC/EDMAC 5.7 E-MAC/EDMAC lan_reg_reset GETHER Bck 256 E-DMAC / /FIFO return 5.7 E-MAC/E-DMAC 5.8.6 5.8 lan_desc_create return 5.8 R01AN0898JJ0100 Rev.1.00 Page 17 of 25

5.8.7 E-MAC/E-DMAC 5.9 E-MAC/E-DMAC lan_reg_set A E-MAC PHY_INT PAUSE E-DMAC PAUSE PAUSE / E-MAC/E-DMAC FIFO FIFO FIFO E-MAC/E-DMAC E-MAC E-MAC RMII/MII/GMII return A 5.9 E-MAC/E-DMAC R01AN0898JJ0100 Rev.1.00 Page 18 of 25

5.8.8 GETHER 5.10 GETHER INT_GEther E-MAC/E-DMAC (EESR) yes no no yes E-MAC yes no E-MAC/E-DMAC (ECSR0) 5Pcyc return 5.10 GETHER R01AN0898JJ0100 Rev.1.00 Page 19 of 25

5.8.9 PHY-LSI 5.11 PHY-LSI phy_autonego PHY-LSI 50ms LAN88710AM50ms MII1 phy_reg_read MII1(Basic Status)5 1 yes no no MII5 phy_reg_read MII5(Auto-Negotiation Link Partner Ability)8 5 yes return 5.11 PHY-LSI 5.8.10 PHY-LSI 5.12 5.15 PHY-LSI phy_reg_read mii_preamble mii_cmd mii_z DATA mii_reg_read mii_z return 5.12 PHY-LSI 1 R01AN0898JJ0100 Rev.1.00 Page 20 of 25

mii_preamble mii_cmd no 1 1 mii_write_1 32 yes return b15-b14 ST01) b13-b12 OP (10 or 01) b11-b7 PHYAD (xxxxx) b6-b2 REGAD (xxxxx) =1? no 1 0 mii_write_0 yes 1 1 mii_write_1 1 no 14 return yes 5.13 PHY-LSI 2 mii_z mii_reg_read PIR 0x00000000 PIR 0x00000001 PIR 0x00000001 PIR 0x00000000 return PIR 0x00000000 PIR 0x00000001 PIR MDI PIR 0x00000001 PIR 0x00000000 no 16 return yes 5.14 PHY-LSI 3 R01AN0898JJ0100 Rev.1.00 Page 21 of 25

mii_write_1 mii_write_0 PIR 0x00000006 PIR 0x00000007 PIR 0x00000007 PIR 0x00000006 PIR 0x00000002 PIR 0x00000003 PIR 0x00000003 PIR 0x00000002 return END 5.15 PHY-LSI 4 R01AN0898JJ0100 Rev.1.00 Page 22 of 25

5.9 5.5 5.5 P ROM C ROM P$PSEC ROM C$BSEC ROM C$DSEC ROM D ( ) ROM B RAM R RAM PRAM ROM P RAM H 00003000 H 0C000000 S RAM 0x0FFFF9F0 PINTHandler / ROM VECTTBL ROM INTTBL ROM PIntPRG ROM H 80000800 SP_S TLB RAM H 8FFFFDF0 RSTHandler ROM PResetPRG ROM P_LBSC_ROM ROM LBSC ROM P_DBSC3_ROM ROM DBSC3 ROM PnonCache ROM () H A0000000 BETH_DESC RAM H AD000000 BETH_BUFF RAM H AD001000 BETH_BUFF2 RAM H AD008000 INTTBL_OL RAM H E500E000 OL PINTHandler_IL / RAM H E5200000 P0 ( MMU ) P1 ( MMU ) P2 ( MMU ) IL PIntPRG_IL RAM P_LBSC_IL ROM LBSC RAM R01AN0665JJ R01AN0898JJ0100 Rev.1.00 Page 23 of 25

6. 7. R01UH0233JJ Rev.1.00 SuperH C/C++ V.9.04 Rev.1.00 R01AN0898JJ0100 Rev.1.00 Page 24 of 25

http://japan.renesas.com/ http://japan.renesas.com/inquiry R01AN0898JJ0100 Rev.1.00 Page 25 of 25

Rev. 1.00 A-1

1. CMOS LSI LSI 2. LSI 3. 4. 5.

http://www.renesas.com 100-00042-6-2 (03)5201-5307 http://japan.renesas.com/contact/ 2012 Renesas Electronics Corporation. All rights reserved. Colophon 1.1