From b468492d7375d0fc76a5fc3ced9d45ef49d05187 Mon Sep 17 00:00:00 2001 From: Balestrino Date: Wed, 28 Aug 2013 09:51:03 +0200 Subject: [PATCH] big code update --- ComponentUpdateLog.txt | 21 + .../Generated_Source/PSoC5/Cm3RealView.scat | 15 +- .../Generated_Source/PSoC5/Cm3Start.c | 117 +- .../Generated_Source/PSoC5/CyBootAsmGnu.s | 8 +- .../Generated_Source/PSoC5/CyBootAsmRv.s | 8 +- .../Generated_Source/PSoC5/CyDmac.c | 43 +- .../Generated_Source/PSoC5/CyDmac.h | 12 +- .../Generated_Source/PSoC5/CyFlash.c | 18 +- .../Generated_Source/PSoC5/CyFlash.h | 7 +- .../Generated_Source/PSoC5/CyLib.c | 4 +- .../Generated_Source/PSoC5/CyLib.h | 6 +- .../Generated_Source/PSoC5/CySpc.c | 4 +- .../Generated_Source/PSoC5/CySpc.h | 4 +- .../Generated_Source/PSoC5/LCD.c | 15 +- .../Generated_Source/PSoC5/LCD.h | 62 +- .../Generated_Source/PSoC5/LCD_LCDPort.c | 2 +- .../Generated_Source/PSoC5/LCD_LCDPort.h | 4 +- .../PSoC5/LCD_LCDPort_aliases.h | 2 +- .../Generated_Source/PSoC5/LCD_PM.c | 2 +- .../Generated_Source/PSoC5/Pin_1.c | 2 +- .../Generated_Source/PSoC5/Pin_1.h | 4 +- .../Generated_Source/PSoC5/Pin_1_aliases.h | 2 +- .../Generated_Source/PSoC5/Pin_2.c | 2 +- .../Generated_Source/PSoC5/Pin_2.h | 4 +- .../Generated_Source/PSoC5/Pin_2_aliases.h | 2 +- .../Generated_Source/PSoC5/Pin_3.c | 2 +- .../Generated_Source/PSoC5/Pin_3.h | 4 +- .../Generated_Source/PSoC5/Pin_3_aliases.h | 2 +- .../Generated_Source/PSoC5/Pin_4.c | 2 +- .../Generated_Source/PSoC5/Pin_4.h | 4 +- .../Generated_Source/PSoC5/Pin_4_aliases.h | 2 +- .../Generated_Source/PSoC5/Pin_5.c | 2 +- .../Generated_Source/PSoC5/Pin_5.h | 4 +- .../Generated_Source/PSoC5/Pin_5_aliases.h | 2 +- .../Generated_Source/PSoC5/Timer_1.c | 754 +++ .../Generated_Source/PSoC5/Timer_1.h | 439 ++ .../Generated_Source/PSoC5/Timer_1_PM.c | 194 + .../Generated_Source/PSoC5/cm3gcc.ld | 26 +- .../Generated_Source/PSoC5/config.hex | 208 +- .../Generated_Source/PSoC5/core_cm3_psoc5.h | 4 +- .../Generated_Source/PSoC5/cyPm.c | 134 +- .../Generated_Source/PSoC5/cyPm.h | 31 +- .../Generated_Source/PSoC5/cydevice.h | 4 +- .../Generated_Source/PSoC5/cydevice_trm.h | 4 +- .../Generated_Source/PSoC5/cydevicegnu.inc | 4 +- .../PSoC5/cydevicegnu_trm.inc | 4 +- .../Generated_Source/PSoC5/cydevicerv.inc | 4 +- .../Generated_Source/PSoC5/cydevicerv_trm.inc | 4 +- .../Generated_Source/PSoC5/cyfitter.h | 256 +- .../Generated_Source/PSoC5/cyfitter_cfg.c | 228 +- .../Generated_Source/PSoC5/cyfitter_cfg.h | 2 +- .../Generated_Source/PSoC5/cyfittergnu.inc | 256 +- .../Generated_Source/PSoC5/cyfitterrv.inc | 256 +- .../Generated_Source/PSoC5/cypins.h | 4 +- .../Generated_Source/PSoC5/cytypes.h | 33 +- .../Generated_Source/PSoC5/cyutils.c | 4 +- .../Generated_Source/PSoC5/m_miso_pin.c | 2 +- .../Generated_Source/PSoC5/m_miso_pin.h | 4 +- .../PSoC5/m_miso_pin_aliases.h | 2 +- .../Generated_Source/PSoC5/m_mosi_pin.c | 2 +- .../Generated_Source/PSoC5/m_mosi_pin.h | 4 +- .../PSoC5/m_mosi_pin_aliases.h | 2 +- .../Generated_Source/PSoC5/m_sclk_pin.c | 2 +- .../Generated_Source/PSoC5/m_sclk_pin.h | 4 +- .../PSoC5/m_sclk_pin_aliases.h | 2 +- .../Generated_Source/PSoC5/post_link.bat | 2 +- .../Generated_Source/PSoC5/project.h | 9 +- .../PSOC5_SPI_LSM303D.cycdx | 87 +- .../PSOC5_SPI_LSM303D.cydwr | Bin 30321 -> 30560 bytes .../PSOC5_SPI_LSM303D.cyfit | Bin 182214 -> 192850 bytes .../PSOC5_SPI_LSM303D.cyprj | 55 +- .../PSOC5_SPI_LSM303D.cyprj.SB | 1300 +++++ PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.rpt | 1524 ++++-- PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.svd | 256 +- .../PSOC5_SPI_LSM303D_PSoC5lib.uvproj | 60 + .../PSOC5_SPI_LSM303D_timing.html | 3513 ++++++++++---- .../TopDesign/TopDesign.cysch | Bin 103058 -> 112880 bytes .../codegentemp/Cm3RealView.scat | 15 +- .../codegentemp/Cm3Start.c | 117 +- .../codegentemp/CyBootAsmGnu.s | 8 +- .../codegentemp/CyBootAsmRv.s | 8 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/CyDmac.c | 43 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/CyDmac.h | 12 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/CyFlash.c | 18 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/CyFlash.h | 7 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/CyLib.c | 4 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/CyLib.h | 6 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/CySpc.c | 4 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/CySpc.h | 4 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD.c | 15 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD.h | 62 +- .../codegentemp/LCD_LCDPort.c | 2 +- .../codegentemp/LCD_LCDPort.h | 4 +- .../codegentemp/LCD_LCDPort_aliases.h | 2 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD_PM.c | 2 +- .../codegentemp/PSOC5_SPI_LSM303D.bvf | 459 +- .../codegentemp/PSOC5_SPI_LSM303D.ctl | 2 +- .../codegentemp/PSOC5_SPI_LSM303D.cycdx | 87 +- .../codegentemp/PSOC5_SPI_LSM303D.cyfit | Bin 182214 -> 192850 bytes .../codegentemp/PSOC5_SPI_LSM303D.dsf | 56 +- .../codegentemp/PSOC5_SPI_LSM303D.pci | 3 +- .../codegentemp/PSOC5_SPI_LSM303D.pco | 77 +- .../codegentemp/PSOC5_SPI_LSM303D.plc_log | 2 +- .../codegentemp/PSOC5_SPI_LSM303D.route | 2410 +++++---- .../codegentemp/PSOC5_SPI_LSM303D.rpt | 1524 ++++-- .../codegentemp/PSOC5_SPI_LSM303D.rt_log | 20 +- .../codegentemp/PSOC5_SPI_LSM303D.sdc | 10 +- .../codegentemp/PSOC5_SPI_LSM303D.svd | 256 +- .../codegentemp/PSOC5_SPI_LSM303D.tr | 4294 ++++++++++------- .../codegentemp/PSOC5_SPI_LSM303D.v | 358 +- .../codegentemp/PSOC5_SPI_LSM303D.vh2 | 538 ++- .../codegentemp/PSOC5_SPI_LSM303D.wde | 2 + .../codegentemp/PSOC5_SPI_LSM303D_p.lib | 2035 +++++++- .../codegentemp/PSOC5_SPI_LSM303D_p.pco | 79 +- .../codegentemp/PSOC5_SPI_LSM303D_p.vh2 | 440 +- .../codegentemp/PSOC5_SPI_LSM303D_r.lib | 2035 +++++++- .../codegentemp/PSOC5_SPI_LSM303D_r.vh2 | 555 ++- .../codegentemp/PSOC5_SPI_LSM303D_t.lib | 2035 +++++++- .../codegentemp/PSOC5_SPI_LSM303D_t.vh2 | 557 ++- .../codegentemp/PSOC5_SPI_LSM303D_timing.html | 3513 ++++++++++---- .../codegentemp/PSOC5_SPI_LSM303D_u.sdc | 6 +- .../codegentemp/PSoC5_Panther_100-TQFP.xml | 3 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_1.c | 2 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_1.h | 4 +- .../codegentemp/Pin_1_aliases.h | 2 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_2.c | 2 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_2.h | 4 +- .../codegentemp/Pin_2_aliases.h | 2 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_3.c | 2 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_3.h | 4 +- .../codegentemp/Pin_3_aliases.h | 2 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_4.c | 2 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_4.h | 4 +- .../codegentemp/Pin_4_aliases.h | 2 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_5.c | 137 + PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_5.h | 130 + .../codegentemp/Pin_5_aliases.h | 32 + PSOC5_SPI_LSM303D.cydsn/codegentemp/Timer_1.c | 754 +++ PSOC5_SPI_LSM303D.cydsn/codegentemp/Timer_1.h | 439 ++ .../codegentemp/Timer_1_PM.c | 194 + .../codegentemp/bitstream.txt | 298 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/cm3gcc.ld | 26 +- .../codegentemp/config.hex | 208 +- .../codegentemp/core_cm3_psoc5.h | 4 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/cyPm.c | 134 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/cyPm.h | 31 +- .../codegentemp/cydevice.h | 4 +- .../codegentemp/cydevice_trm.h | 4 +- .../codegentemp/cydevicegnu.inc | 4 +- .../codegentemp/cydevicegnu_trm.inc | 4 +- .../codegentemp/cydevicerv.inc | 4 +- .../codegentemp/cydevicerv_trm.inc | 4 +- .../codegentemp/cyfitter.h | 256 +- .../codegentemp/cyfitter_cfg.c | 228 +- .../codegentemp/cyfitter_cfg.h | 2 +- .../codegentemp/cyfittergnu.inc | 256 +- .../codegentemp/cyfitterrv.inc | 256 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/cypins.h | 4 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/cytypes.h | 33 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/cyutils.c | 4 +- .../codegentemp/elab_dependencies.txt | 850 ++-- .../codegentemp/generated_files.txt | 164 +- .../codegentemp/lcpsoc3/index | Bin 1792 -> 1792 bytes .../codegentemp/m_miso_pin.c | 2 +- .../codegentemp/m_miso_pin.h | 4 +- .../codegentemp/m_miso_pin_aliases.h | 2 +- .../codegentemp/m_mosi_pin.c | 2 +- .../codegentemp/m_mosi_pin.h | 4 +- .../codegentemp/m_mosi_pin_aliases.h | 2 +- .../codegentemp/m_sclk_pin.c | 2 +- .../codegentemp/m_sclk_pin.h | 4 +- .../codegentemp/m_sclk_pin_aliases.h | 2 +- .../codegentemp/placer.log | 58 +- PSOC5_SPI_LSM303D.cydsn/codegentemp/project.h | 9 +- .../codegentemp/warp_dependencies.txt | 4 + PSOC5_SPI_LSM303D.cydsn/main.c | 549 +-- PSOC5_SPI_LSM303D.cywrk.SB | 337 ++ PSOC5_SPI_LSM303D.cywrk.Tore | 2 +- 178 files changed, 28314 insertions(+), 8931 deletions(-) create mode 100644 PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Timer_1.c create mode 100644 PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Timer_1.h create mode 100644 PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Timer_1_PM.c create mode 100644 PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.cyprj.SB create mode 100644 PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_5.c create mode 100644 PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_5.h create mode 100644 PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_5_aliases.h create mode 100644 PSOC5_SPI_LSM303D.cydsn/codegentemp/Timer_1.c create mode 100644 PSOC5_SPI_LSM303D.cydsn/codegentemp/Timer_1.h create mode 100644 PSOC5_SPI_LSM303D.cydsn/codegentemp/Timer_1_PM.c create mode 100644 PSOC5_SPI_LSM303D.cywrk.SB diff --git a/ComponentUpdateLog.txt b/ComponentUpdateLog.txt index 62bc11c..c511ae3 100644 --- a/ComponentUpdateLog.txt +++ b/ComponentUpdateLog.txt @@ -22,3 +22,24 @@ Project : PSOC5_SPI_LSM303D cy_boot v 3.20 v 3.30 +Last Modified Date & Time: 07/04/2013 18:18:39 + +Project : PSOC5_SPI_LSM303D + Schematic : TopDesign/TopDesign.cysch + + m_miso_pin v 1.80 v 1.90 + m_mosi_pin v 1.80 v 1.90 + m_sclk_pin v 1.80 v 1.90 + Tx_1 v 1.80 v 1.90 + Pin_1 v 1.80 v 1.90 + Pin_2 v 1.80 v 1.90 + Pin_3 v 1.80 v 1.90 + Pin_4 v 1.80 v 1.90 + LCD v 1.80 v 1.90 + +Project : PSOC5_SPI_LSM303D + Design Wide APIs + + cy_boot v 3.30 v 3.40 + + diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Cm3RealView.scat b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Cm3RealView.scat index 716fd4c..968bf68 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Cm3RealView.scat +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Cm3RealView.scat @@ -1,6 +1,6 @@ ;******************************************************************************** -;* File Name: Cm3RealView.scat -;* Version 3.30 +;* File Name: Cm3RealView.scat +;* Version 3.40 ;* ;* Description: ;* This Linker Descriptor file describes the memory layout of the PSoC5 @@ -21,9 +21,9 @@ ;* ;* ;******************************************************************************** -;* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. -;* You may use this file only in accordance with the license, terms, conditions, -;* disclaimers, and limitations in the end user license agreement accompanying +;* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. +;* You may use this file only in accordance with the license, terms, conditions, +;* disclaimers, and limitations in the end user license agreement accompanying ;* the software package with which this file was provided. ;********************************************************************************/ @@ -50,6 +50,11 @@ LOAD_ROM 0 (262144 - 0) * (.ramvectors) } + NOINIT_DATA +0 UNINIT + { + * (.noinit) + } + DATA +0 { * (+RW, +ZI) diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Cm3Start.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Cm3Start.c index db78216..f7d4c9e 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Cm3Start.c +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Cm3Start.c @@ -1,12 +1,12 @@ /******************************************************************************* * File Name: Cm3Start.c -* Version 3.30 +* Version 3.40 * * Description: * Startup code for the ARM CM3. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. @@ -19,9 +19,9 @@ #include "CyDmac.h" #include "cyfitter.h" - #define NUM_INTERRUPTS 32u #define NUM_VECTORS (CYINT_IRQ_BASE+NUM_INTERRUPTS) +#define NUM_ROM_VECTORS 4u #define NVIC_APINT ((reg32 *) CYREG_NVIC_APPLN_INTR) #define NVIC_CFG_CTRL ((reg32 *) CYREG_NVIC_CFG_CONTROL) #define NVIC_APINT_PRIGROUP_3_5 0x00000400u /* Priority group 3.5 split */ @@ -37,10 +37,20 @@ CY_ISR(IntDefaultHandler); void Reset(void); CY_ISR(IntDefaultHandler); +#if defined(__ARMCC_VERSION) + #define INITIAL_STACK_POINTER (cyisraddress)(uint32)&Image$$ARM_LIB_STACK$$ZI$$Limit +#elif defined (__GNUC__) + #define INITIAL_STACK_POINTER __cs3_stack +#endif /* (__ARMCC_VERSION) */ + +/* Global variables */ +CY_NOINIT static uint32 cySysNoInitDataValid; + /******************************************************************************* * Default Ram Interrupt Vector table storage area. Must be 256-byte aligned. *******************************************************************************/ + __attribute__ ((section(".ramvectors"))) #if defined(__ARMCC_VERSION) __align(256) @@ -53,6 +63,7 @@ cyisraddress CyRamVectors[NUM_VECTORS]; /******************************************************************************* * Function Name: IntDefaultHandler ******************************************************************************** +* * Summary: * This function is called for all interrupts, other than reset, that get * called before the system is setup. @@ -79,6 +90,7 @@ CY_ISR(IntDefaultHandler) } } + #if defined(__ARMCC_VERSION) /* Local function for the device reset. */ @@ -93,69 +105,11 @@ extern uint32 Image$$ARM_LIB_STACK$$ZI$$Limit; /* RealView C Library initialization. */ extern int __main(void); -/******************************************************************************* -* -* Default Rom Interrupt Vector table. -* -*******************************************************************************/ -#pragma diag_suppress 1296 -__attribute__ ((section(".romvectors"))) -const cyisraddress RomVectors[NUM_VECTORS] = -{ - (cyisraddress)(uint32)&Image$$ARM_LIB_STACK$$ZI$$Limit, /* The initial stack pointer 0 */ - (cyisraddress)Reset, /* The reset handler 1 */ - IntDefaultHandler, /* The NMI handler 2 */ - IntDefaultHandler, /* The hard fault handler 3 */ - IntDefaultHandler, /* The MPU fault handler 4 */ - IntDefaultHandler, /* The bus fault handler 5 */ - IntDefaultHandler, /* The usage fault handler 6 */ - IntDefaultHandler, /* Reserved 7 */ - IntDefaultHandler, /* Reserved 8 */ - IntDefaultHandler, /* Reserved 9 */ - IntDefaultHandler, /* Reserved 10 */ - IntDefaultHandler, /* SVCall handler 11 */ - IntDefaultHandler, /* Debug monitor handler 12 */ - IntDefaultHandler, /* Reserved 13 */ - IntDefaultHandler, /* The PendSV handler 14 */ - IntDefaultHandler, /* The SysTick handler 15 */ - IntDefaultHandler, /* External Interrupt(0) 16 */ - IntDefaultHandler, /* External Interrupt(1) 17 */ - IntDefaultHandler, /* External Interrupt(2) 18 */ - IntDefaultHandler, /* External Interrupt(3) 19 */ - IntDefaultHandler, /* External Interrupt(4) 20 */ - IntDefaultHandler, /* External Interrupt(5) 21 */ - IntDefaultHandler, /* External Interrupt(6) 22 */ - IntDefaultHandler, /* External Interrupt(7) 23 */ - IntDefaultHandler, /* External Interrupt(8) 24 */ - IntDefaultHandler, /* External Interrupt(9) 25 */ - IntDefaultHandler, /* External Interrupt(A) 26 */ - IntDefaultHandler, /* External Interrupt(B) 27 */ - IntDefaultHandler, /* External Interrupt(C) 28 */ - IntDefaultHandler, /* External Interrupt(D) 29 */ - IntDefaultHandler, /* External Interrupt(E) 30 */ - IntDefaultHandler, /* External Interrupt(F) 31 */ - IntDefaultHandler, /* External Interrupt(10) 32 */ - IntDefaultHandler, /* External Interrupt(11) 33 */ - IntDefaultHandler, /* External Interrupt(12) 34 */ - IntDefaultHandler, /* External Interrupt(13) 35 */ - IntDefaultHandler, /* External Interrupt(14) 36 */ - IntDefaultHandler, /* External Interrupt(15) 37 */ - IntDefaultHandler, /* External Interrupt(16) 38 */ - IntDefaultHandler, /* External Interrupt(17) 39 */ - IntDefaultHandler, /* External Interrupt(18) 40 */ - IntDefaultHandler, /* External Interrupt(19) 41 */ - IntDefaultHandler, /* External Interrupt(1A) 42 */ - IntDefaultHandler, /* External Interrupt(1B) 43 */ - IntDefaultHandler, /* External Interrupt(1C) 44 */ - IntDefaultHandler, /* External Interrupt(1D) 45 */ - IntDefaultHandler, /* External Interrupt(1E) 46 */ - IntDefaultHandler /* External Interrupt(1F) 47 */ -}; - /******************************************************************************* * Function Name: Reset ******************************************************************************** +* * Summary: * This function handles the reset interrupt for the RVDS/MDK toolchains. * This is the first bit of code that is executed at startup. @@ -180,14 +134,14 @@ __asm void Reset(void) #if(CYDEV_PROJ_TYPE != CYDEV_PROJ_TYPE_LOADABLE) #if(CYDEV_DEBUGGING_ENABLE) - ldr r3, =0x400046e8 /* CYDEV_DEBUG_ENABLE_REGISTER */ + ldr r3, =0x400046e8 /* CYDEV_DEBUG_ENABLE_REGISTER */ ldrb r4, [r3, #0] orr r4, r4, #01 strb r4, [r3, #0] debugEnabled #endif /* (CYDEV_DEBUGGING_ENABLE) */ - ldr r3, =0x400046f8 /* CYREG_RESET_SR0 */ + ldr r3, =0x400046fa /* CYREG_RESET_SR0 */ ldrb r2, [r3, #0] #endif /* (CYDEV_PROJ_TYPE != CYDEV_PROJ_TYPE_LOADABLE) */ @@ -209,6 +163,7 @@ debugEnabled /******************************************************************************* * Function Name: $Sub$$main ******************************************************************************** +* * Summary: * This function is called imediatly before the users main * @@ -232,15 +187,14 @@ void $Sub$$main(void) #elif defined(__GNUC__) -extern uint32 __cs3_interrupt_vector; +extern void __cs3_stack(void); extern void __cs3_start_c(void); -#define RomVectors (cyisraddress)(&__cs3_interrupt_vector) - /******************************************************************************* * Function Name: Reset ******************************************************************************** +* * Summary: * This function handles the reset interrupt for the GCC toolchain. This is the * first bit of code that is executed at startup. @@ -284,9 +238,33 @@ void Reset(void) #endif /* __GNUC__ */ + +/******************************************************************************* +* +* Default Rom Interrupt Vector table. +* +*******************************************************************************/ +#if defined(__ARMCC_VERSION) + #pragma diag_suppress 1296 +#endif +__attribute__ ((section(".romvectors"))) +const cyisraddress RomVectors[NUM_ROM_VECTORS] = +{ + #if defined(__ARMCC_VERSION) + INITIAL_STACK_POINTER, /* The initial stack pointer 0 */ + #elif defined (__GNUC__) + &INITIAL_STACK_POINTER, /* The initial stack pointer 0 */ + #endif /* (__ARMCC_VERSION) */ + (cyisraddress)&Reset, /* The reset handler 1 */ + &IntDefaultHandler, /* The NMI handler 2 */ + &IntDefaultHandler, /* The hard fault handler 3 */ +}; + + /******************************************************************************* * Function Name: initialize_psoc ******************************************************************************** +* * Summary: * This function used to initialize the PSoC chip before calling main. * @@ -314,7 +292,7 @@ void initialize_psoc(void) /* Set Ram interrupt vectors to default functions. */ for(i = 0u; i < NUM_VECTORS; i++) { - CyRamVectors[i] = RomVectors[i]; + CyRamVectors[i] = (i < NUM_ROM_VECTORS) ? RomVectors[i] : &IntDefaultHandler; } /* Was stored in CFGMEM to avoid being cleared while SRAM gets cleared */ @@ -332,6 +310,9 @@ void initialize_psoc(void) CyDmacConfigure(); #endif /* (0u != DMA_CHANNELS_USED__MASK0) */ + + /* Actually, no need to clean this variable, just to make compiler happy. */ + cySysNoInitDataValid = 0u; } diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyBootAsmGnu.s b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyBootAsmGnu.s index 64404e9..062dba4 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyBootAsmGnu.s +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyBootAsmGnu.s @@ -1,14 +1,14 @@ /******************************************************************************* * File Name: CyBootAsmGnu.s -* Version 3.30 +* Version 3.40 * * Description: * Assembly routines for GNU as. * ******************************************************************************** -* Copyright 2010-2012, Cypress Semiconductor Corporation. All rights reserved. -* You may use this file only in accordance with the license, terms, conditions, -* disclaimers, and limitations in the end user license agreement accompanying +* Copyright 2010-2013, Cypress Semiconductor Corporation. All rights reserved. +* You may use this file only in accordance with the license, terms, conditions, +* disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. *******************************************************************************/ diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyBootAsmRv.s b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyBootAsmRv.s index 1109303..3b362bc 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyBootAsmRv.s +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyBootAsmRv.s @@ -1,14 +1,14 @@ ;------------------------------------------------------------------------------- ; FILENAME: CyBootAsmRv.s -; Version 3.30 +; Version 3.40 ; ; DESCRIPTION: ; Assembly routines for RealView. ; ;------------------------------------------------------------------------------- -; Copyright 2010-2012, Cypress Semiconductor Corporation. All rights reserved. -; You may use this file only in accordance with the license, terms, conditions, -; disclaimers, and limitations in the end user license agreement accompanying +; Copyright 2010-2013, Cypress Semiconductor Corporation. All rights reserved. +; You may use this file only in accordance with the license, terms, conditions, +; disclaimers, and limitations in the end user license agreement accompanying ; the software package with which this file was provided. ;------------------------------------------------------------------------------- diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyDmac.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyDmac.c index 763431b..1ed276f 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyDmac.c +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyDmac.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: CyDmac.c -* Version 3.30 +* Version 3.40 * * Description: * Provides an API for the DMAC component. The API includes functions for the @@ -21,7 +21,7 @@ * The user can over write this once the TD is allocated. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. @@ -570,7 +570,8 @@ cystatus CyDmaChGetRequest(uint8 chHandle) if(chHandle < CY_DMA_NUMBEROF_CHANNELS) { - status = (cystatus) (CY_DMA_CH_STRUCT_PTR[chHandle].action[0u] & (CY_DMA_CPU_REQ | CY_DMA_CPU_TERM_TD | CY_DMA_CPU_TERM_CHAIN)); + status = (cystatus) ((uint32)CY_DMA_CH_STRUCT_PTR[chHandle].action[0u] & + (uint32)(CY_DMA_CPU_REQ | CY_DMA_CPU_TERM_TD | CY_DMA_CPU_TERM_CHAIN)); } return(status); @@ -818,32 +819,36 @@ uint8 CyDmaTdFreeCount(void) * uint8 nextTd: * Zero based index of the next Transfer Descriptor in the TD chain. Zero is a * valid pointer to the next TD; DMA_END_CHAIN_TD is the end of the chain. +* DMA_DISABLE_TD indicates an end to the chain and the DMA is disabled. No +* further TDs are fetched. DMA_DISABLE_TD is only supported on PSoC3 and +* PSoC 5LP silicons. * * uint8 configuration: * Stores the Bit field of configuration bits. * -* TD_SWAP_EN - Perform endian swap +* CY_DMA_TD_SWAP_EN - Perform endian swap * -* TD_SWAP_SIZE4 - Swap size = 4 bytes +* CY_DMA_TD_SWAP_SIZE4 - Swap size = 4 bytes * -* TD_AUTO_EXEC_NEXT - The next TD in the chain will trigger automatically -* when the current TD completes. +* CY_DMA_TD_AUTO_EXEC_NEXT - The next TD in the chain will trigger +* automatically when the current TD completes. * -* TD_TERMIN_EN - Terminate this TD if a positive edge on the trq input -* line occurs. The positive edge must occur during a -* burst. That is the only time the DMAC will listen for -* it. +* CY_DMA_TD_TERMIN_EN - Terminate this TD if a positive edge on the trq +* input line occurs. The positive edge must occur +* during a burst. That is the only time the DMAC +* will listen for it. * -* DMA__TD_TERMOUT_EN - When this TD completes, the TERMOUT signal will -* generate a pulse. Note that this option is instance -* specific with the instance name followed by two -* underscores. In this example, the instance name is DMA. +* DMA__TD_TERMOUT_EN - When this TD completes, the TERMOUT signal will +* generate a pulse. Note that this option is +* instance specific with the instance name followed +* by two underscores. In this example, the instance +* name is DMA. * -* TD_INC_DST_ADR - Increment DST_ADR according to the size of each data -* transaction in the burst. +* CY_DMA_TD_INC_DST_ADR - Increment DST_ADR according to the size of each +* data transaction in the burst. * -* TD_INC_SRC_ADR - Increment SRC_ADR according to the size of each data -* transaction in the burst. +* CY_DMA_TD_INC_SRC_ADR - Increment SRC_ADR according to the size of each +* data transaction in the burst. * * Return: * CYRET_SUCCESS if successful. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyDmac.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyDmac.h index 0f42fdf..b7aaef1 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyDmac.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyDmac.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: CyDmac.h -* Version 3.30 +* Version 3.40 * * Description: * Provides the function definitions for the DMA Controller. @@ -10,7 +10,7 @@ * System Reference Guide provided with PSoC Creator. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. @@ -109,9 +109,9 @@ typedef struct dmac_tdmem2_struct #define CY_DMA_INVALID_TD 0xFFu /* Invalid TD */ #define CY_DMA_END_CHAIN_TD 0xFFu /* End of chain TD */ -#if(CY_PSOC3) +#if(CY_PSOC3 || CY_PSOC5LP) #define CY_DMA_DISABLE_TD 0xFEu -#endif /* (CY_PSOC3) */ +#endif /* (CY_PSOC3 || CY_PSOC5LP) */ #define CY_DMA_TD_SIZE 0x08u @@ -195,9 +195,9 @@ typedef struct dmac_tdmem2_struct #define DMAC_UNPOP_ACC (CY_DMA_UNPOP_ACC) #define DMAC_PERIPH_ERR (CY_DMA_PERIPH_ERR) #define ROUND_ROBIN_ENABLE (CY_DMA_ROUND_ROBIN_ENABLE) -#if(CY_PSOC3) +#if(CY_PSOC3 || CY_PSOC5LP) #define DMA_DISABLE_TD (CY_DMA_DISABLE_TD) -#endif /* (CY_PSOC3) */ +#endif /* (CY_PSOC3 || CY_PSOC5LP) */ #define DMAC_CFG (CY_DMA_CFG_PTR) #define DMAC_ERR (CY_DMA_ERR_PTR) diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyFlash.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyFlash.c index e216c45..939ff7c 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyFlash.c +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyFlash.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: CyFlash.c -* Version 3.30 +* Version 3.40 * * Description: * Provides an API for the FLASH/EEPROM. @@ -13,7 +13,7 @@ * System Reference Guide provided with PSoC Creator. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. @@ -364,7 +364,7 @@ cystatus CySetFlashEEBuffer(uint8 * buffer) /* Copy the rowdata to the temporary buffer. */ #if(CY_PSOC3) - (void) memcpy((void *) rowBuffer, (const void *) rowData, (int16) CYDEV_FLS_ROW_SIZE); + (void) memcpy((void *) rowBuffer, (void *)((uint32) rowData), (int16) CYDEV_FLS_ROW_SIZE); #else (void) memcpy((void *) rowBuffer, (const void *) rowData, CYDEV_FLS_ROW_SIZE); #endif /* (CY_PSOC3) */ @@ -403,15 +403,19 @@ cystatus CySetFlashEEBuffer(uint8 * buffer) * CYRET_UNKNOWN if there was an SPC error. * *******************************************************************************/ - cystatus CyWriteRowConfig(uint8 arrayId, uint16 rowAddress, uint8 * rowECC) + cystatus CyWriteRowConfig(uint8 arrayId, uint16 rowAddress, const uint8 * rowECC) { uint32 offset; uint16 i; cystatus status; /* Read the existing flash data. */ - offset = CYDEV_FLS_BASE + ((uint32) arrayId * CYDEV_FLS_SECTOR_SIZE) + + offset = ((uint32) arrayId * CYDEV_FLS_SECTOR_SIZE) + ((uint32) rowAddress * CYDEV_FLS_ROW_SIZE); + + #if (CYDEV_FLS_BASE != 0u) + offset += CYDEV_FLS_BASE; + #endif for (i = 0u; i < CYDEV_FLS_ROW_SIZE; i++) { @@ -419,9 +423,9 @@ cystatus CySetFlashEEBuffer(uint8 * buffer) } #if(CY_PSOC3) - (void) memcpy((void *) &rowBuffer[CYDEV_FLS_ROW_SIZE], (void *) rowECC, (int16) CYDEV_ECC_ROW_SIZE); + (void) memcpy((void *) &rowBuffer[CYDEV_FLS_ROW_SIZE], (void *)((uint32)rowECC), (int16) CYDEV_ECC_ROW_SIZE); #else - (void) memcpy((void *) &rowBuffer[CYDEV_FLS_ROW_SIZE], (void *) rowECC, CYDEV_ECC_ROW_SIZE); + (void) memcpy((void *) &rowBuffer[CYDEV_FLS_ROW_SIZE], (const void *) rowECC, CYDEV_ECC_ROW_SIZE); #endif /* (CY_PSOC3) */ status = CyWriteRowFull(arrayId, rowAddress, rowBuffer, CYDEV_FLS_ROW_SIZE + CYDEV_ECC_ROW_SIZE); diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyFlash.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyFlash.h index ee767ef..18c5d4a 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyFlash.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyFlash.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: CyFlash.h -* Version 3.30 +* Version 3.40 * * Description: * Provides the function definitions for the FLASH/EEPROM. @@ -10,7 +10,7 @@ * System Reference Guide provided with PSoC Creator. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. @@ -68,7 +68,8 @@ cystatus CyWriteRowFull(uint8 arrayId, uint16 rowNumber, const uint8 * rowData, cystatus CyWriteRowData(uint8 arrayId, uint16 rowAddress, const uint8 * rowData); #if ((CYDEV_ECC_ENABLE == 0u) && (CYDEV_CONFIGURATION_ECC == 0u)) - cystatus CyWriteRowConfig(uint8 arrayId, uint16 rowAddress, uint8 * rowECC) ; + cystatus CyWriteRowConfig(uint8 arrayId, uint16 rowAddress, const uint8 * rowECC) \ + ; #endif /* ((CYDEV_ECC_ENABLE == 0u) && (CYDEV_CONFIGURATION_ECC == 0u)) */ void CyFlash_SetWaitCycles(uint8 freq) ; diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyLib.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyLib.c index 0f59206..0c52ec9 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyLib.c +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyLib.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: CyLib.c -* Version 3.30 +* Version 3.40 * * Description: * Provides system API for the clocking, interrupts and watchdog timer. @@ -10,7 +10,7 @@ * System Reference Guide provided with PSoC Creator. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyLib.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyLib.h index fd2d94a..b036110 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyLib.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CyLib.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: CyLib.h -* Version 3.30 +* Version 3.40 * * Description: * Provides the function definitions for the system, clocking, interrupts and @@ -11,7 +11,7 @@ * Guide provided with PSoC Creator. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. @@ -803,7 +803,7 @@ uint8 CyVdRealTimeStatus(void) ; #define INTERRUPT_CSR ((reg8 *) CYREG_INTC_CSR_EN) #define DISABLE_IRQ_SET ((uint8)(0x01u << 1u)) /* INTC_CSR_EN */ #define INTERRUPT_DISABLE_IRQ {*INTERRUPT_CSR |= DISABLE_IRQ_SET;} - #define INTERRUPT_ENABLE_IRQ {*INTERRUPT_CSR &= (uint8)(~DISABLE_IRQ_SET);} + #define INTERRUPT_ENABLE_IRQ {*INTERRUPT_CSR = (uint8)(~DISABLE_IRQ_SET);} #endif /* (CY_PSOC3) */ diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CySpc.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CySpc.c index 1baf598..6824a20 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CySpc.c +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CySpc.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: CySpc.c -* Version 3.30 +* Version 3.40 * * Description: * Provides an API for the System Performance Component. @@ -8,7 +8,7 @@ * application. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CySpc.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CySpc.h index f2c0c02..afdf79d 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CySpc.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/CySpc.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: CySpc.c -* Version 3.30 +* Version 3.40 * * Description: * Provides definitions for the System Performance Component API. @@ -8,7 +8,7 @@ * application. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD.c index 0c7c2ce..a88cd76 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD.c +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: LCD.c -* Version 1.80 +* Version 1.90 * * Description: * This file provides source code for the Character LCD component's API. @@ -56,13 +56,13 @@ void LCD_Init(void) { /* INIT CODE */ CyDelay(40u); /* Delay 40 ms */ - LCD_WrCntrlNib(LCD_DISPLAY_8_BIT_INIT); /* Selects 8-bit mode */ + LCD_WrCntrlNib(LCD_DISPLAY_8_BIT_INIT); /* Selects 8-bit mode */ CyDelay(5u); /* Delay 5 ms */ - LCD_WrCntrlNib(LCD_DISPLAY_8_BIT_INIT); /* Selects 8-bit mode */ + LCD_WrCntrlNib(LCD_DISPLAY_8_BIT_INIT); /* Selects 8-bit mode */ CyDelay(15u); /* Delay 15 ms */ - LCD_WrCntrlNib(LCD_DISPLAY_8_BIT_INIT); /* Selects 8-bit mode */ + LCD_WrCntrlNib(LCD_DISPLAY_8_BIT_INIT); /* Selects 8-bit mode */ CyDelay(1u); /* Delay 1 ms */ - LCD_WrCntrlNib(LCD_DISPLAY_4_BIT_INIT); /* Selects 4-bit mode */ + LCD_WrCntrlNib(LCD_DISPLAY_4_BIT_INIT); /* Selects 4-bit mode */ CyDelay(5u); /* Delay 5 ms */ LCD_WriteControl(LCD_CURSOR_AUTO_INCR_ON); /* Incr Cursor After Writes */ @@ -358,7 +358,7 @@ void LCD_IsReady(void) #if (CY_PSOC4) /* Mask off data pins to clear old values out */ - value = LCD_PORT_PC_REG & ((uint8)(~ LCD_DM_DATA_MASK)); + value = LCD_PORT_PC_REG & ((uint32) (~ LCD_DM_DATA_MASK)); /* Load in high Z values for data pins, others unchanged */ LCD_PORT_PC_REG = value | LCD_HIGH_Z_DATA_DM; @@ -406,6 +406,9 @@ void LCD_IsReady(void) /* Set enable low */ LCD_PORT_DR_REG &= ((uint8)(~LCD_E)); + /* This gives a true delay between disably Enable bit and poling Ready bit */ + CyDelayUs(0u); + /* Extract ready bit */ value &= LCD_READY_BIT; diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD.h index 0b0bda9..261343e 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: LCD.h -* Version 1.80 +* Version 1.90 * * Description: * This header file contains registers and constants associated with the @@ -185,26 +185,30 @@ extern uint8 const CYCODE LCD_customFonts[64u]; * Registers ***************************************/ -/* Port Register Definitions */ -#define LCD_PORT_DR_REG (*(reg8 *) LCD_LCDPort__DR) /* Data Output Register */ -#define LCD_PORT_DR_PTR ( (reg8 *) LCD_LCDPort__DR) -#define LCD_PORT_PS_REG (*(reg8 *) LCD_LCDPort__PS) /* Pin State Register */ -#define LCD_PORT_PS_PTR ( (reg8 *) LCD_LCDPort__PS) - /* Device specific registers */ #if (CY_PSOC4) - #define LCD_PORT_PC_REG (*(reg32 *) LCD_LCDPort__PC) - #define LCD_PORT_PC_PTR (*(reg32 *) LCD_LCDPort__PC) + #define LCD_PORT_DR_REG (*(reg32 *) LCD_LCDPort__DR) /* Data Output Register */ + #define LCD_PORT_DR_PTR ( (reg32 *) LCD_LCDPort__DR) + #define LCD_PORT_PS_REG (*(reg32 *) LCD_LCDPort__PS) /* Pin State Register */ + #define LCD_PORT_PS_PTR ( (reg32 *) LCD_LCDPort__PS) + + #define LCD_PORT_PC_REG (*(reg32 *) LCD_LCDPort__PC) + #define LCD_PORT_PC_PTR (*(reg32 *) LCD_LCDPort__PC) #else - #define LCD_PORT_DM0_REG (*(reg8 *) LCD_LCDPort__DM0) /* Port Drive Mode 0 */ - #define LCD_PORT_DM0_PTR ( (reg8 *) LCD_LCDPort__DM0) - #define LCD_PORT_DM1_REG (*(reg8 *) LCD_LCDPort__DM1) /* Port Drive Mode 1 */ - #define LCD_PORT_DM1_PTR ( (reg8 *) LCD_LCDPort__DM1) - #define LCD_PORT_DM2_REG (*(reg8 *) LCD_LCDPort__DM2) /* Port Drive Mode 2 */ - #define LCD_PORT_DM2_PTR ( (reg8 *) LCD_LCDPort__DM2) + #define LCD_PORT_DR_REG (*(reg8 *) LCD_LCDPort__DR) /* Data Output Register */ + #define LCD_PORT_DR_PTR ( (reg8 *) LCD_LCDPort__DR) + #define LCD_PORT_PS_REG (*(reg8 *) LCD_LCDPort__PS) /* Pin State Register */ + #define LCD_PORT_PS_PTR ( (reg8 *) LCD_LCDPort__PS) + + #define LCD_PORT_DM0_REG (*(reg8 *) LCD_LCDPort__DM0) /* Port Drive Mode 0 */ + #define LCD_PORT_DM0_PTR ( (reg8 *) LCD_LCDPort__DM0) + #define LCD_PORT_DM1_REG (*(reg8 *) LCD_LCDPort__DM1) /* Port Drive Mode 1 */ + #define LCD_PORT_DM1_PTR ( (reg8 *) LCD_LCDPort__DM1) + #define LCD_PORT_DM2_REG (*(reg8 *) LCD_LCDPort__DM2) /* Port Drive Mode 2 */ + #define LCD_PORT_DM2_PTR ( (reg8 *) LCD_LCDPort__DM2) #endif /* CY_PSOC4 */ @@ -214,8 +218,13 @@ extern uint8 const CYCODE LCD_customFonts[64u]; ***************************************/ /* SHIFT must be 1 or 0 */ -#define LCD_PORT_SHIFT (LCD_LCDPort__SHIFT) -#define LCD_PORT_MASK (LCD_LCDPort__MASK) +#if (0 == LCD_LCDPort__SHIFT) + #define LCD_PORT_SHIFT (0x00u) +#else + #define LCD_PORT_SHIFT (0x01u) +#endif /* (0 == LCD_LCDPort__SHIFT) */ + +#define LCD_PORT_MASK ((uint8) (LCD_LCDPort__MASK)) #if (CY_PSOC4) @@ -225,7 +234,9 @@ extern uint8 const CYCODE LCD_customFonts[64u]; */ #define LCD_HIGH_Z_DATA_DM (0x00000249ul) #define LCD_STRONG_DATA_DM (0x00000DB6ul) - #define LCD_DM_DATA_MASK (0xFFFul << (LCD_PORT_SHIFT * 3u)) + #define LCD_DATA_PINS_MASK (0x00000FFFul) + #define LCD_DM_DATA_MASK ((uint32)(LCD_DATA_PINS_MASK << \ + (LCD_PORT_SHIFT * 3u))) #else @@ -247,11 +258,16 @@ extern uint8 const CYCODE LCD_customFonts[64u]; #endif /* CY_PSOC4 */ /* Pin Masks */ -#define LCD_RS ((uint8) (((uint8) 0x20u) << LCD_LCDPort__SHIFT)) -#define LCD_RW ((uint8) (((uint8) 0x40u) << LCD_LCDPort__SHIFT)) -#define LCD_E ((uint8) (((uint8) 0x10u) << LCD_LCDPort__SHIFT)) -#define LCD_READY_BIT ((uint8) (((uint8) 0x08u) << LCD_LCDPort__SHIFT)) -#define LCD_DATA_MASK ((uint8) (((uint8) 0x0Fu) << LCD_LCDPort__SHIFT)) +#define LCD_RS ((uint8) \ + (((uint8) 0x20u) << LCD_LCDPort__SHIFT)) +#define LCD_RW ((uint8) \ + (((uint8) 0x40u) << LCD_LCDPort__SHIFT)) +#define LCD_E ((uint8) \ + (((uint8) 0x10u) << LCD_LCDPort__SHIFT)) +#define LCD_READY_BIT ((uint8) \ + (((uint8) 0x08u) << LCD_LCDPort__SHIFT)) +#define LCD_DATA_MASK ((uint8) \ + (((uint8) 0x0Fu) << LCD_LCDPort__SHIFT)) /* These names are obsolete and will be removed in future revisions */ #define LCD_PORT_DR LCD_PORT_DR_REG diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD_LCDPort.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD_LCDPort.c index 7d5cdb8..3fa29b2 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD_LCDPort.c +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD_LCDPort.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: LCD_LCDPort.c -* Version 1.80 +* Version 1.90 * * Description: * This file contains API to enable firmware control of a Pins component. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD_LCDPort.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD_LCDPort.h index 6f77bc0..4417263 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD_LCDPort.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD_LCDPort.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: LCD_LCDPort.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines @@ -25,7 +25,7 @@ /* Check to see if required defines such as CY_PSOC5A are available */ /* They are defined starting with cy_boot v3.0 */ #if !defined (CY_PSOC5A) - #error Component cy_pins_v1_80 requires cy_boot v3.0 or later + #error Component cy_pins_v1_90 requires cy_boot v3.0 or later #endif /* (CY_PSOC5A) */ /* APIs are not generated for P15[7:6] */ diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD_LCDPort_aliases.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD_LCDPort_aliases.h index bfba954..15c22c8 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD_LCDPort_aliases.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD_LCDPort_aliases.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: LCD_LCDPort.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD_PM.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD_PM.c index b34c396..855f7f2 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD_PM.c +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/LCD_PM.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: LCD_PM.c -* Version 1.80 +* Version 1.90 * * Description: * This file provides the API source code for the Static Segment LCD component. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_1.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_1.c index 6b2c354..2754a77 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_1.c +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_1.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_1.c -* Version 1.80 +* Version 1.90 * * Description: * This file contains API to enable firmware control of a Pins component. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_1.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_1.h index d8a146a..4170174 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_1.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_1.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_1.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines @@ -25,7 +25,7 @@ /* Check to see if required defines such as CY_PSOC5A are available */ /* They are defined starting with cy_boot v3.0 */ #if !defined (CY_PSOC5A) - #error Component cy_pins_v1_80 requires cy_boot v3.0 or later + #error Component cy_pins_v1_90 requires cy_boot v3.0 or later #endif /* (CY_PSOC5A) */ /* APIs are not generated for P15[7:6] */ diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_1_aliases.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_1_aliases.h index b404d4a..13cc3b1 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_1_aliases.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_1_aliases.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_1.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_2.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_2.c index 1f4385a..e8c68c4 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_2.c +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_2.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_2.c -* Version 1.80 +* Version 1.90 * * Description: * This file contains API to enable firmware control of a Pins component. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_2.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_2.h index b74bf90..4e73fa8 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_2.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_2.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_2.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines @@ -25,7 +25,7 @@ /* Check to see if required defines such as CY_PSOC5A are available */ /* They are defined starting with cy_boot v3.0 */ #if !defined (CY_PSOC5A) - #error Component cy_pins_v1_80 requires cy_boot v3.0 or later + #error Component cy_pins_v1_90 requires cy_boot v3.0 or later #endif /* (CY_PSOC5A) */ /* APIs are not generated for P15[7:6] */ diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_2_aliases.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_2_aliases.h index d6d8eba..ef19a3a 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_2_aliases.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_2_aliases.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_2.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_3.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_3.c index 4237a34..412803c 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_3.c +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_3.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_3.c -* Version 1.80 +* Version 1.90 * * Description: * This file contains API to enable firmware control of a Pins component. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_3.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_3.h index 5268493..6b112e5 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_3.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_3.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_3.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines @@ -25,7 +25,7 @@ /* Check to see if required defines such as CY_PSOC5A are available */ /* They are defined starting with cy_boot v3.0 */ #if !defined (CY_PSOC5A) - #error Component cy_pins_v1_80 requires cy_boot v3.0 or later + #error Component cy_pins_v1_90 requires cy_boot v3.0 or later #endif /* (CY_PSOC5A) */ /* APIs are not generated for P15[7:6] */ diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_3_aliases.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_3_aliases.h index d3dcdea..fb8bc2d 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_3_aliases.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_3_aliases.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_3.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_4.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_4.c index 3bb6dd5..702a703 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_4.c +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_4.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_4.c -* Version 1.80 +* Version 1.90 * * Description: * This file contains API to enable firmware control of a Pins component. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_4.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_4.h index 3387667..cded03b 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_4.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_4.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_4.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines @@ -25,7 +25,7 @@ /* Check to see if required defines such as CY_PSOC5A are available */ /* They are defined starting with cy_boot v3.0 */ #if !defined (CY_PSOC5A) - #error Component cy_pins_v1_80 requires cy_boot v3.0 or later + #error Component cy_pins_v1_90 requires cy_boot v3.0 or later #endif /* (CY_PSOC5A) */ /* APIs are not generated for P15[7:6] */ diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_4_aliases.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_4_aliases.h index 08f796a..4f0894e 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_4_aliases.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_4_aliases.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_4.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_5.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_5.c index b184643..ee180d0 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_5.c +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_5.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_5.c -* Version 1.80 +* Version 1.90 * * Description: * This file contains API to enable firmware control of a Pins component. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_5.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_5.h index 70589a8..8bc2e01 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_5.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_5.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_5.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines @@ -25,7 +25,7 @@ /* Check to see if required defines such as CY_PSOC5A are available */ /* They are defined starting with cy_boot v3.0 */ #if !defined (CY_PSOC5A) - #error Component cy_pins_v1_80 requires cy_boot v3.0 or later + #error Component cy_pins_v1_90 requires cy_boot v3.0 or later #endif /* (CY_PSOC5A) */ /* APIs are not generated for P15[7:6] */ diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_5_aliases.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_5_aliases.h index 429caab..1f8e49d 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_5_aliases.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Pin_5_aliases.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_5.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Timer_1.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Timer_1.c new file mode 100644 index 0000000..66ba383 --- /dev/null +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Timer_1.c @@ -0,0 +1,754 @@ +/******************************************************************************* +* File Name: Timer_1.c +* Version 2.50 +* +* Description: +* The Timer component consists of a 8, 16, 24 or 32-bit timer with +* a selectable period between 2 and 2^Width - 1. The timer may free run +* or be used as a capture timer as well. The capture can be initiated +* by a positive or negative edge signal as well as via software. +* A trigger input can be programmed to enable the timer on rising edge +* falling edge, either edge or continous run. +* Interrupts may be generated due to a terminal count condition +* or a capture event. +* +* Note: +* +******************************************************************************** +* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* You may use this file only in accordance with the license, terms, conditions, +* disclaimers, and limitations in the end user license agreement accompanying +* the software package with which this file was provided. +********************************************************************************/ + +#include "Timer_1.h" + +uint8 Timer_1_initVar = 0u; + + +/******************************************************************************* +* Function Name: Timer_1_Init +******************************************************************************** +* +* Summary: +* Initialize to the schematic state +* +* Parameters: +* void +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_Init(void) +{ + #if(!Timer_1_UsingFixedFunction) + /* Interrupt State Backup for Critical Region*/ + uint8 Timer_1_interruptState; + #endif /* Interrupt state back up for Fixed Function only */ + + #if (Timer_1_UsingFixedFunction) + /* Clear all bits but the enable bit (if it's already set) for Timer operation */ + Timer_1_CONTROL &= Timer_1_CTRL_ENABLE; + + /* Clear the mode bits for continuous run mode */ + #if (CY_PSOC5A) + Timer_1_CONTROL2 &= ((uint8)(~Timer_1_CTRL_MODE_MASK)); + #endif /* Clear bits in CONTROL2 only in PSOC5A */ + + #if (CY_PSOC3 || CY_PSOC5LP) + Timer_1_CONTROL3 &= ((uint8)(~Timer_1_CTRL_MODE_MASK)); + #endif /* CONTROL3 register exists only in PSoC3 OR PSoC5LP */ + + /* Check if One Shot mode is enabled i.e. RunMode !=0*/ + #if (Timer_1_RunModeUsed != 0x0u) + /* Set 3rd bit of Control register to enable one shot mode */ + Timer_1_CONTROL |= 0x04u; + #endif /* One Shot enabled only when RunModeUsed is not Continuous*/ + + #if (Timer_1_RunModeUsed == 2) + #if (CY_PSOC5A) + /* Set last 2 bits of control2 register if one shot(halt on + interrupt) is enabled*/ + Timer_1_CONTROL2 |= 0x03u; + #endif /* Set One-Shot Halt on Interrupt bit in CONTROL2 for PSoC5A */ + + #if (CY_PSOC3 || CY_PSOC5LP) + /* Set last 2 bits of control3 register if one shot(halt on + interrupt) is enabled*/ + Timer_1_CONTROL3 |= 0x03u; + #endif /* Set One-Shot Halt on Interrupt bit in CONTROL3 for PSoC3 or PSoC5LP */ + + #endif /* Remove section if One Shot Halt on Interrupt is not enabled */ + + #if (Timer_1_UsingHWEnable != 0) + #if (CY_PSOC5A) + /* Set the default Run Mode of the Timer to Continuous */ + Timer_1_CONTROL2 |= Timer_1_CTRL_MODE_PULSEWIDTH; + #endif /* Set Continuous Run Mode in CONTROL2 for PSoC5A */ + + #if (CY_PSOC3 || CY_PSOC5LP) + /* Clear and Set ROD and COD bits of CFG2 register */ + Timer_1_CONTROL3 &= ((uint8)(~Timer_1_CTRL_RCOD_MASK)); + Timer_1_CONTROL3 |= Timer_1_CTRL_RCOD; + + /* Clear and Enable the HW enable bit in CFG2 register */ + Timer_1_CONTROL3 &= ((uint8)(~Timer_1_CTRL_ENBL_MASK)); + Timer_1_CONTROL3 |= Timer_1_CTRL_ENBL; + + /* Set the default Run Mode of the Timer to Continuous */ + Timer_1_CONTROL3 |= Timer_1_CTRL_MODE_CONTINUOUS; + #endif /* Set Continuous Run Mode in CONTROL3 for PSoC3ES3 or PSoC5A */ + + #endif /* Configure Run Mode with hardware enable */ + + /* Clear and Set SYNCTC and SYNCCMP bits of RT1 register */ + Timer_1_RT1 &= ((uint8)(~Timer_1_RT1_MASK)); + Timer_1_RT1 |= Timer_1_SYNC; + + /*Enable DSI Sync all all inputs of the Timer*/ + Timer_1_RT1 &= ((uint8)(~Timer_1_SYNCDSI_MASK)); + Timer_1_RT1 |= Timer_1_SYNCDSI_EN; + + /* Set the IRQ to use the status register interrupts */ + Timer_1_CONTROL2 |= Timer_1_CTRL2_IRQ_SEL; + #endif /* Configuring registers of fixed function implementation */ + + /* Set Initial values from Configuration */ + Timer_1_WritePeriod(Timer_1_INIT_PERIOD); + Timer_1_WriteCounter(Timer_1_INIT_PERIOD); + + #if (Timer_1_UsingHWCaptureCounter)/* Capture counter is enabled */ + Timer_1_CAPTURE_COUNT_CTRL |= Timer_1_CNTR_ENABLE; + Timer_1_SetCaptureCount(Timer_1_INIT_CAPTURE_COUNT); + #endif /* Configure capture counter value */ + + #if (!Timer_1_UsingFixedFunction) + #if (Timer_1_SoftwareCaptureMode) + Timer_1_SetCaptureMode(Timer_1_INIT_CAPTURE_MODE); + #endif /* Set Capture Mode for UDB implementation if capture mode is software controlled */ + + #if (Timer_1_SoftwareTriggerMode) + if (0u == (Timer_1_CONTROL & Timer_1__B_TIMER__TM_SOFTWARE)) + { + Timer_1_SetTriggerMode(Timer_1_INIT_TRIGGER_MODE); + } + #endif /* Set trigger mode for UDB Implementation if trigger mode is software controlled */ + + /* CyEnterCriticalRegion and CyExitCriticalRegion are used to mark following region critical*/ + /* Enter Critical Region*/ + Timer_1_interruptState = CyEnterCriticalSection(); + + /* Use the interrupt output of the status register for IRQ output */ + Timer_1_STATUS_AUX_CTRL |= Timer_1_STATUS_ACTL_INT_EN_MASK; + + /* Exit Critical Region*/ + CyExitCriticalSection(Timer_1_interruptState); + + #if (Timer_1_EnableTriggerMode) + Timer_1_EnableTrigger(); + #endif /* Set Trigger enable bit for UDB implementation in the control register*/ + + #if (Timer_1_InterruptOnCaptureCount) + #if (!Timer_1_ControlRegRemoved) + Timer_1_SetInterruptCount(Timer_1_INIT_INT_CAPTURE_COUNT); + #endif /* Set interrupt count in control register if control register is not removed */ + #endif /*Set interrupt count in UDB implementation if interrupt count feature is checked.*/ + + Timer_1_ClearFIFO(); + #endif /* Configure additional features of UDB implementation */ + + Timer_1_SetInterruptMode(Timer_1_INIT_INTERRUPT_MODE); +} + + +/******************************************************************************* +* Function Name: Timer_1_Enable +******************************************************************************** +* +* Summary: +* Enable the Timer +* +* Parameters: +* void +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_Enable(void) +{ + /* Globally Enable the Fixed Function Block chosen */ + #if (Timer_1_UsingFixedFunction) + Timer_1_GLOBAL_ENABLE |= Timer_1_BLOCK_EN_MASK; + Timer_1_GLOBAL_STBY_ENABLE |= Timer_1_BLOCK_STBY_EN_MASK; + #endif /* Set Enable bit for enabling Fixed function timer*/ + + /* Remove assignment if control register is removed */ + #if (!Timer_1_ControlRegRemoved || Timer_1_UsingFixedFunction) + Timer_1_CONTROL |= Timer_1_CTRL_ENABLE; + #endif /* Remove assignment if control register is removed */ +} + + +/******************************************************************************* +* Function Name: Timer_1_Start +******************************************************************************** +* +* Summary: +* The start function initializes the timer with the default values, the +* enables the timerto begin counting. It does not enable interrupts, +* the EnableInt command should be called if interrupt generation is required. +* +* Parameters: +* void +* +* Return: +* void +* +* Global variables: +* Timer_1_initVar: Is modified when this function is called for the +* first time. Is used to ensure that initialization happens only once. +* +*******************************************************************************/ +void Timer_1_Start(void) +{ + if(Timer_1_initVar == 0u) + { + Timer_1_Init(); + + Timer_1_initVar = 1u; /* Clear this bit for Initialization */ + } + + /* Enable the Timer */ + Timer_1_Enable(); +} + + +/******************************************************************************* +* Function Name: Timer_1_Stop +******************************************************************************** +* +* Summary: +* The stop function halts the timer, but does not change any modes or disable +* interrupts. +* +* Parameters: +* void +* +* Return: +* void +* +* Side Effects: If the Enable mode is set to Hardware only then this function +* has no effect on the operation of the timer. +* +*******************************************************************************/ +void Timer_1_Stop(void) +{ + /* Disable Timer */ + #if(!Timer_1_ControlRegRemoved || Timer_1_UsingFixedFunction) + Timer_1_CONTROL &= ((uint8)(~Timer_1_CTRL_ENABLE)); + #endif /* Remove assignment if control register is removed */ + + /* Globally disable the Fixed Function Block chosen */ + #if (Timer_1_UsingFixedFunction) + Timer_1_GLOBAL_ENABLE &= ((uint8)(~Timer_1_BLOCK_EN_MASK)); + Timer_1_GLOBAL_STBY_ENABLE &= ((uint8)(~Timer_1_BLOCK_STBY_EN_MASK)); + #endif /* Disable global enable for the Timer Fixed function block to stop the Timer*/ +} + + +/******************************************************************************* +* Function Name: Timer_1_SetInterruptMode +******************************************************************************** +* +* Summary: +* This function selects which of the interrupt inputs may cause an interrupt. +* The twosources are caputure and terminal. One, both or neither may +* be selected. +* +* Parameters: +* interruptMode: This parameter is used to enable interrups on either/or +* terminal count or capture. +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_SetInterruptMode(uint8 interruptMode) +{ + Timer_1_STATUS_MASK = interruptMode; +} + + +/******************************************************************************* +* Function Name: Timer_1_SoftwareCapture +******************************************************************************** +* +* Summary: +* This function forces a capture independent of the capture signal. +* +* Parameters: +* void +* +* Return: +* void +* +* Side Effects: +* An existing hardware capture could be overwritten. +* +*******************************************************************************/ +void Timer_1_SoftwareCapture(void) +{ + /* Generate a software capture by reading the counter register */ + (void)Timer_1_COUNTER_LSB; + /* Capture Data is now in the FIFO */ +} + + +/******************************************************************************* +* Function Name: Timer_1_ReadStatusRegister +******************************************************************************** +* +* Summary: +* Reads the status register and returns it's state. This function should use +* defined types for the bit-field information as the bits in this register may +* be permuteable. +* +* Parameters: +* void +* +* Return: +* The contents of the status register +* +* Side Effects: +* Status register bits may be clear on read. +* +*******************************************************************************/ +uint8 Timer_1_ReadStatusRegister(void) +{ + return (Timer_1_STATUS); +} + + +#if (!Timer_1_ControlRegRemoved) /* Remove API if control register is removed */ + + +/******************************************************************************* +* Function Name: Timer_1_ReadControlRegister +******************************************************************************** +* +* Summary: +* Reads the control register and returns it's value. +* +* Parameters: +* void +* +* Return: +* The contents of the control register +* +*******************************************************************************/ +uint8 Timer_1_ReadControlRegister(void) +{ + return ((uint8)Timer_1_CONTROL); +} + + +/******************************************************************************* +* Function Name: Timer_1_WriteControlRegister +******************************************************************************** +* +* Summary: +* Sets the bit-field of the control register. +* +* Parameters: +* control: The contents of the control register +* +* Return: +* +*******************************************************************************/ +void Timer_1_WriteControlRegister(uint8 control) +{ + Timer_1_CONTROL = control; +} +#endif /* Remove API if control register is removed */ + + +/******************************************************************************* +* Function Name: Timer_1_ReadPeriod +******************************************************************************** +* +* Summary: +* This function returns the current value of the Period. +* +* Parameters: +* void +* +* Return: +* The present value of the counter. +* +*******************************************************************************/ +uint16 Timer_1_ReadPeriod(void) +{ + #if(Timer_1_UsingFixedFunction) + return ((uint16)CY_GET_REG16(Timer_1_PERIOD_LSB_PTR)); + #else + return (CY_GET_REG16(Timer_1_PERIOD_LSB_PTR)); + #endif /* (Timer_1_UsingFixedFunction) */ +} + + +/******************************************************************************* +* Function Name: Timer_1_WritePeriod +******************************************************************************** +* +* Summary: +* This function is used to change the period of the counter. The new period +* will be loaded the next time terminal count is detected. +* +* Parameters: +* period: This value may be between 1 and (2^Resolution)-1. A value of 0 will +* result in the counter remaining at zero. +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_WritePeriod(uint16 period) +{ + #if(Timer_1_UsingFixedFunction) + uint16 period_temp = (uint16)period; + CY_SET_REG16(Timer_1_PERIOD_LSB_PTR, period_temp); + #else + CY_SET_REG16(Timer_1_PERIOD_LSB_PTR, period); + #endif /*Write Period value with appropriate resolution suffix depending on UDB or fixed function implementation */ +} + + +/******************************************************************************* +* Function Name: Timer_1_ReadCapture +******************************************************************************** +* +* Summary: +* This function returns the last value captured. +* +* Parameters: +* void +* +* Return: +* Present Capture value. +* +*******************************************************************************/ +uint16 Timer_1_ReadCapture(void) +{ + #if(Timer_1_UsingFixedFunction) + return ((uint16)CY_GET_REG16(Timer_1_CAPTURE_LSB_PTR)); + #else + return (CY_GET_REG16(Timer_1_CAPTURE_LSB_PTR)); + #endif /* (Timer_1_UsingFixedFunction) */ +} + + +/******************************************************************************* +* Function Name: Timer_1_WriteCounter +******************************************************************************** +* +* Summary: +* This funtion is used to set the counter to a specific value +* +* Parameters: +* counter: New counter value. +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_WriteCounter(uint16 counter) \ + +{ + #if(Timer_1_UsingFixedFunction) + /* This functionality is removed until a FixedFunction HW update to + * allow this register to be written + */ + CY_SET_REG16(Timer_1_COUNTER_LSB_PTR, (uint16)counter); + + #else + CY_SET_REG16(Timer_1_COUNTER_LSB_PTR, counter); + #endif /* Set Write Counter only for the UDB implementation (Write Counter not available in fixed function Timer */ +} + + +/******************************************************************************* +* Function Name: Timer_1_ReadCounter +******************************************************************************** +* +* Summary: +* This function returns the current counter value. +* +* Parameters: +* void +* +* Return: +* Present compare value. +* +*******************************************************************************/ +uint16 Timer_1_ReadCounter(void) +{ + + /* Force capture by reading Accumulator */ + /* Must first do a software capture to be able to read the counter */ + /* It is up to the user code to make sure there isn't already captured data in the FIFO */ + (void)Timer_1_COUNTER_LSB; + + /* Read the data from the FIFO (or capture register for Fixed Function)*/ + #if(Timer_1_UsingFixedFunction) + return ((uint16)CY_GET_REG16(Timer_1_CAPTURE_LSB_PTR)); + #else + return (CY_GET_REG16(Timer_1_CAPTURE_LSB_PTR)); + #endif /* (Timer_1_UsingFixedFunction) */ +} + + +#if(!Timer_1_UsingFixedFunction) /* UDB Specific Functions */ + +/******************************************************************************* + * The functions below this point are only available using the UDB + * implementation. If a feature is selected, then the API is enabled. + ******************************************************************************/ + + +#if (Timer_1_SoftwareCaptureMode) + + +/******************************************************************************* +* Function Name: Timer_1_SetCaptureMode +******************************************************************************** +* +* Summary: +* This function sets the capture mode to either rising or falling edge. +* +* Parameters: +* captureMode: This parameter sets the capture mode of the UDB capture feature +* The parameter values are defined using the +* #define Timer_1__B_TIMER__CM_NONE 0 +#define Timer_1__B_TIMER__CM_RISINGEDGE 1 +#define Timer_1__B_TIMER__CM_FALLINGEDGE 2 +#define Timer_1__B_TIMER__CM_EITHEREDGE 3 +#define Timer_1__B_TIMER__CM_SOFTWARE 4 + identifiers +* The following are the possible values of the parameter +* Timer_1__B_TIMER__CM_NONE - Set Capture mode to None +* Timer_1__B_TIMER__CM_RISINGEDGE - Rising edge of Capture input +* Timer_1__B_TIMER__CM_FALLINGEDGE - Falling edge of Capture input +* Timer_1__B_TIMER__CM_EITHEREDGE - Either edge of Capture input +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_SetCaptureMode(uint8 captureMode) +{ + /* This must only set to two bits of the control register associated */ + captureMode = ((uint8)((uint8)captureMode << Timer_1_CTRL_CAP_MODE_SHIFT)); + captureMode &= (Timer_1_CTRL_CAP_MODE_MASK); + + /* Clear the Current Setting */ + Timer_1_CONTROL &= ((uint8)(~Timer_1_CTRL_CAP_MODE_MASK)); + + /* Write The New Setting */ + Timer_1_CONTROL |= captureMode; +} +#endif /* Remove API if Capture Mode is not Software Controlled */ + + +#if (Timer_1_SoftwareTriggerMode) + + +/******************************************************************************* +* Function Name: Timer_1_SetTriggerMode +******************************************************************************** +* +* Summary: +* This function sets the trigger input mode +* +* Parameters: +* triggerMode: Pass one of the pre-defined Trigger Modes (except Software) + #define Timer_1__B_TIMER__TM_NONE 0x00u + #define Timer_1__B_TIMER__TM_RISINGEDGE 0x04u + #define Timer_1__B_TIMER__TM_FALLINGEDGE 0x08u + #define Timer_1__B_TIMER__TM_EITHEREDGE 0x0Cu + #define Timer_1__B_TIMER__TM_SOFTWARE 0x10u +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_SetTriggerMode(uint8 triggerMode) +{ + /* This must only set to two bits of the control register associated */ + triggerMode &= Timer_1_CTRL_TRIG_MODE_MASK; + + /* Clear the Current Setting */ + Timer_1_CONTROL &= ((uint8)(~Timer_1_CTRL_TRIG_MODE_MASK)); + + /* Write The New Setting */ + Timer_1_CONTROL |= (triggerMode | Timer_1__B_TIMER__TM_SOFTWARE); + +} +#endif /* Remove API if Trigger Mode is not Software Controlled */ + +#if (Timer_1_EnableTriggerMode) + + +/******************************************************************************* +* Function Name: Timer_1_EnableTrigger +******************************************************************************** +* +* Summary: +* Sets the control bit enabling Hardware Trigger mode +* +* Parameters: +* void +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_EnableTrigger(void) +{ + #if (!Timer_1_ControlRegRemoved) /* Remove assignment if control register is removed */ + Timer_1_CONTROL |= Timer_1_CTRL_TRIG_EN; + #endif /* Remove code section if control register is not used */ +} + + +/******************************************************************************* +* Function Name: Timer_1_DisableTrigger +******************************************************************************** +* +* Summary: +* Clears the control bit enabling Hardware Trigger mode +* +* Parameters: +* void +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_DisableTrigger(void) +{ + #if (!Timer_1_ControlRegRemoved) /* Remove assignment if control register is removed */ + Timer_1_CONTROL &= ((uint8)(~Timer_1_CTRL_TRIG_EN)); + #endif /* Remove code section if control register is not used */ +} +#endif /* Remove API is Trigger Mode is set to None */ + + +#if(Timer_1_InterruptOnCaptureCount) +#if (!Timer_1_ControlRegRemoved) /* Remove API if control register is removed */ + + +/******************************************************************************* +* Function Name: Timer_1_SetInterruptCount +******************************************************************************** +* +* Summary: +* This function sets the capture count before an interrupt is triggered. +* +* Parameters: +* interruptCount: A value between 0 and 3 is valid. If the value is 0, then +* an interrupt will occur each time a capture occurs. +* A value of 1 to 3 will cause the interrupt +* to delay by the same number of captures. +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_SetInterruptCount(uint8 interruptCount) +{ + /* This must only set to two bits of the control register associated */ + interruptCount &= Timer_1_CTRL_INTCNT_MASK; + + /* Clear the Current Setting */ + Timer_1_CONTROL &= ((uint8)(~Timer_1_CTRL_INTCNT_MASK)); + /* Write The New Setting */ + Timer_1_CONTROL |= interruptCount; +} +#endif /* Remove API if control register is removed */ +#endif /* Timer_1_InterruptOnCaptureCount */ + + +#if (Timer_1_UsingHWCaptureCounter) + + +/******************************************************************************* +* Function Name: Timer_1_SetCaptureCount +******************************************************************************** +* +* Summary: +* This function sets the capture count +* +* Parameters: +* captureCount: A value between 2 and 127 inclusive is valid. A value of 1 +* to 127 will cause the interrupt to delay by the same number of +* captures. +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_SetCaptureCount(uint8 captureCount) +{ + Timer_1_CAP_COUNT = captureCount; +} + + +/******************************************************************************* +* Function Name: Timer_1_ReadCaptureCount +******************************************************************************** +* +* Summary: +* This function reads the capture count setting +* +* Parameters: +* void +* +* Return: +* Returns the Capture Count Setting +* +*******************************************************************************/ +uint8 Timer_1_ReadCaptureCount(void) +{ + return ((uint8)Timer_1_CAP_COUNT); +} +#endif /* Timer_1_UsingHWCaptureCounter */ + + +/******************************************************************************* +* Function Name: Timer_1_ClearFIFO +******************************************************************************** +* +* Summary: +* This function clears all capture data from the capture FIFO +* +* Parameters: +* void +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_ClearFIFO(void) +{ + while(0u != (Timer_1_ReadStatusRegister() & Timer_1_STATUS_FIFONEMP)) + { + (void)Timer_1_ReadCapture(); + } +} + +#endif /* UDB Specific Functions */ + + +/* [] END OF FILE */ diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Timer_1.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Timer_1.h new file mode 100644 index 0000000..9fbf5b6 --- /dev/null +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Timer_1.h @@ -0,0 +1,439 @@ +/******************************************************************************* +* File Name: Timer_1.h +* Version 2.50 +* +* Description: +* Contains the function prototypes and constants available to the timer +* user module. +* +* Note: +* None +* +******************************************************************************** +* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* You may use this file only in accordance with the license, terms, conditions, +* disclaimers, and limitations in the end user license agreement accompanying +* the software package with which this file was provided. +********************************************************************************/ + +#if !defined(CY_Timer_v2_30_Timer_1_H) +#define CY_Timer_v2_30_Timer_1_H + +#include "cytypes.h" +#include "cyfitter.h" +#include "CyLib.h" /* For CyEnterCriticalSection() and CyExitCriticalSection() functions */ + +extern uint8 Timer_1_initVar; + +/* Check to see if required defines such as CY_PSOC5LP are available */ +/* They are defined starting with cy_boot v3.0 */ +#if !defined (CY_PSOC5LP) + #error Component Timer_v2_50 requires cy_boot v3.0 or later +#endif /* (CY_ PSOC5LP) */ + + +/************************************** +* Parameter Defaults +**************************************/ + +#define Timer_1_Resolution 16u +#define Timer_1_UsingFixedFunction 0u +#define Timer_1_UsingHWCaptureCounter 0u +#define Timer_1_SoftwareCaptureMode 0u +#define Timer_1_SoftwareTriggerMode 0u +#define Timer_1_UsingHWEnable 0u +#define Timer_1_EnableTriggerMode 0u +#define Timer_1_InterruptOnCaptureCount 0u +#define Timer_1_RunModeUsed 1u +#define Timer_1_ControlRegRemoved 0u + + +/*************************************** +* Type defines +***************************************/ + + +/************************************************************************** + * Sleep Wakeup Backup structure for Timer Component + *************************************************************************/ +typedef struct +{ + uint8 TimerEnableState; + #if(!Timer_1_UsingFixedFunction) + #if (CY_UDB_V0) + uint16 TimerUdb; /* Timer internal counter value */ + uint16 TimerPeriod; /* Timer Period value */ + uint8 InterruptMaskValue; /* Timer Compare Value */ + #if (Timer_1_UsingHWCaptureCounter) + uint8 TimerCaptureCounter; /* Timer Capture Counter Value */ + #endif /* variable declaration for backing up Capture Counter value*/ + #endif /* variables for non retention registers in CY_UDB_V0 */ + + #if (CY_UDB_V1) + uint16 TimerUdb; + uint8 InterruptMaskValue; + #if (Timer_1_UsingHWCaptureCounter) + uint8 TimerCaptureCounter; + #endif /* variable declarations for backing up non retention registers in CY_UDB_V1 */ + #endif /* (CY_UDB_V1) */ + + #if (!Timer_1_ControlRegRemoved) + uint8 TimerControlRegister; + #endif /* variable declaration for backing up enable state of the Timer */ + #endif /* define backup variables only for UDB implementation. Fixed function registers are all retention */ +}Timer_1_backupStruct; + + +/*************************************** +* Function Prototypes +***************************************/ + +void Timer_1_Start(void) ; +void Timer_1_Stop(void) ; + +void Timer_1_SetInterruptMode(uint8 interruptMode) ; +uint8 Timer_1_ReadStatusRegister(void) ; +/* Deprecated function. Do not use this in future. Retained for backward compatibility */ +#define Timer_1_GetInterruptSource() Timer_1_ReadStatusRegister() + +#if(!Timer_1_ControlRegRemoved) + uint8 Timer_1_ReadControlRegister(void) ; + void Timer_1_WriteControlRegister(uint8 control) \ + ; +#endif /* (!Timer_1_ControlRegRemoved) */ + +uint16 Timer_1_ReadPeriod(void) ; +void Timer_1_WritePeriod(uint16 period) \ + ; +uint16 Timer_1_ReadCounter(void) ; +void Timer_1_WriteCounter(uint16 counter) \ + ; +uint16 Timer_1_ReadCapture(void) ; +void Timer_1_SoftwareCapture(void) ; + + +#if(!Timer_1_UsingFixedFunction) /* UDB Prototypes */ + #if (Timer_1_SoftwareCaptureMode) + void Timer_1_SetCaptureMode(uint8 captureMode) ; + #endif /* (!Timer_1_UsingFixedFunction) */ + + #if (Timer_1_SoftwareTriggerMode) + void Timer_1_SetTriggerMode(uint8 triggerMode) ; + #endif /* (Timer_1_SoftwareTriggerMode) */ + #if (Timer_1_EnableTriggerMode) + void Timer_1_EnableTrigger(void) ; + void Timer_1_DisableTrigger(void) ; + #endif /* (Timer_1_EnableTriggerMode) */ + + #if(Timer_1_InterruptOnCaptureCount) + #if(!Timer_1_ControlRegRemoved) + void Timer_1_SetInterruptCount(uint8 interruptCount) \ + ; + #endif /* (!Timer_1_ControlRegRemoved) */ + #endif /* (Timer_1_InterruptOnCaptureCount) */ + + #if (Timer_1_UsingHWCaptureCounter) + void Timer_1_SetCaptureCount(uint8 captureCount) \ + ; + uint8 Timer_1_ReadCaptureCount(void) ; + #endif /* (Timer_1_UsingHWCaptureCounter) */ + + void Timer_1_ClearFIFO(void) ; +#endif /* UDB Prototypes */ + +/* Sleep Retention APIs */ +void Timer_1_Init(void) ; +void Timer_1_Enable(void) ; +void Timer_1_SaveConfig(void) ; +void Timer_1_RestoreConfig(void) ; +void Timer_1_Sleep(void) ; +void Timer_1_Wakeup(void) ; + + +/*************************************** +* Enumerated Types and Parameters +***************************************/ + +/* Enumerated Type B_Timer__CaptureModes, Used in Capture Mode */ +#define Timer_1__B_TIMER__CM_NONE 0 +#define Timer_1__B_TIMER__CM_RISINGEDGE 1 +#define Timer_1__B_TIMER__CM_FALLINGEDGE 2 +#define Timer_1__B_TIMER__CM_EITHEREDGE 3 +#define Timer_1__B_TIMER__CM_SOFTWARE 4 + + + +/* Enumerated Type B_Timer__TriggerModes, Used in Trigger Mode */ +#define Timer_1__B_TIMER__TM_NONE 0x00u +#define Timer_1__B_TIMER__TM_RISINGEDGE 0x04u +#define Timer_1__B_TIMER__TM_FALLINGEDGE 0x08u +#define Timer_1__B_TIMER__TM_EITHEREDGE 0x0Cu +#define Timer_1__B_TIMER__TM_SOFTWARE 0x10u + + +/*************************************** +* Initialial Parameter Constants +***************************************/ + +#define Timer_1_INIT_PERIOD 499u +#define Timer_1_INIT_CAPTURE_MODE ((uint8)((uint8)0u << Timer_1_CTRL_CAP_MODE_SHIFT)) +#define Timer_1_INIT_TRIGGER_MODE ((uint8)((uint8)0u << Timer_1_CTRL_TRIG_MODE_SHIFT)) +#if (Timer_1_UsingFixedFunction) + #define Timer_1_INIT_INTERRUPT_MODE (((uint8)((uint8)0u << Timer_1_STATUS_TC_INT_MASK_SHIFT)) | \ + ((uint8)((uint8)0 << Timer_1_STATUS_CAPTURE_INT_MASK_SHIFT))) +#else + #define Timer_1_INIT_INTERRUPT_MODE (((uint8)((uint8)0u << Timer_1_STATUS_TC_INT_MASK_SHIFT)) | \ + ((uint8)((uint8)0 << Timer_1_STATUS_CAPTURE_INT_MASK_SHIFT)) | \ + ((uint8)((uint8)0 << Timer_1_STATUS_FIFOFULL_INT_MASK_SHIFT))) +#endif /* (Timer_1_UsingFixedFunction) */ +#define Timer_1_INIT_CAPTURE_COUNT (2u) +#define Timer_1_INIT_INT_CAPTURE_COUNT ((uint8)((uint8)(1u - 1u) << Timer_1_CTRL_INTCNT_SHIFT)) + + +/*************************************** +* Registers +***************************************/ + +#if (Timer_1_UsingFixedFunction) /* Implementation Specific Registers and Register Constants */ + + + /*************************************** + * Fixed Function Registers + ***************************************/ + + #define Timer_1_STATUS (*(reg8 *) Timer_1_TimerHW__SR0 ) + /* In Fixed Function Block Status and Mask are the same register */ + #define Timer_1_STATUS_MASK (*(reg8 *) Timer_1_TimerHW__SR0 ) + #define Timer_1_CONTROL (*(reg8 *) Timer_1_TimerHW__CFG0) + #define Timer_1_CONTROL2 (*(reg8 *) Timer_1_TimerHW__CFG1) + #define Timer_1_CONTROL2_PTR ( (reg8 *) Timer_1_TimerHW__CFG1) + #define Timer_1_RT1 (*(reg8 *) Timer_1_TimerHW__RT1) + #define Timer_1_RT1_PTR ( (reg8 *) Timer_1_TimerHW__RT1) + + #if (CY_PSOC3 || CY_PSOC5LP) + #define Timer_1_CONTROL3 (*(reg8 *) Timer_1_TimerHW__CFG2) + #define Timer_1_CONTROL3_PTR ( (reg8 *) Timer_1_TimerHW__CFG2) + #endif /* (CY_PSOC3 || CY_PSOC5LP) */ + #define Timer_1_GLOBAL_ENABLE (*(reg8 *) Timer_1_TimerHW__PM_ACT_CFG) + #define Timer_1_GLOBAL_STBY_ENABLE (*(reg8 *) Timer_1_TimerHW__PM_STBY_CFG) + + #define Timer_1_CAPTURE_LSB (* (reg16 *) Timer_1_TimerHW__CAP0 ) + #define Timer_1_CAPTURE_LSB_PTR ((reg16 *) Timer_1_TimerHW__CAP0 ) + #define Timer_1_PERIOD_LSB (* (reg16 *) Timer_1_TimerHW__PER0 ) + #define Timer_1_PERIOD_LSB_PTR ((reg16 *) Timer_1_TimerHW__PER0 ) + #define Timer_1_COUNTER_LSB (* (reg16 *) Timer_1_TimerHW__CNT_CMP0 ) + #define Timer_1_COUNTER_LSB_PTR ((reg16 *) Timer_1_TimerHW__CNT_CMP0 ) + + + /*************************************** + * Register Constants + ***************************************/ + + /* Fixed Function Block Chosen */ + #define Timer_1_BLOCK_EN_MASK Timer_1_TimerHW__PM_ACT_MSK + #define Timer_1_BLOCK_STBY_EN_MASK Timer_1_TimerHW__PM_STBY_MSK + + /* Control Register Bit Locations */ + /* Interrupt Count - Not valid for Fixed Function Block */ + #define Timer_1_CTRL_INTCNT_SHIFT 0x00u + /* Trigger Polarity - Not valid for Fixed Function Block */ + #define Timer_1_CTRL_TRIG_MODE_SHIFT 0x00u + /* Trigger Enable - Not valid for Fixed Function Block */ + #define Timer_1_CTRL_TRIG_EN_SHIFT 0x00u + /* Capture Polarity - Not valid for Fixed Function Block */ + #define Timer_1_CTRL_CAP_MODE_SHIFT 0x00u + /* Timer Enable - As defined in Register Map, part of TMRX_CFG0 register */ + #define Timer_1_CTRL_ENABLE_SHIFT 0x00u + + /* Control Register Bit Masks */ + #define Timer_1_CTRL_ENABLE ((uint8)((uint8)0x01u << Timer_1_CTRL_ENABLE_SHIFT)) + + /* Control2 Register Bit Masks */ + /* As defined in Register Map, Part of the TMRX_CFG1 register */ + #define Timer_1_CTRL2_IRQ_SEL_SHIFT 0x00u + #define Timer_1_CTRL2_IRQ_SEL ((uint8)((uint8)0x01u << Timer_1_CTRL2_IRQ_SEL_SHIFT)) + + #if (CY_PSOC5A) + /* Use CFG1 Mode bits to set run mode */ + /* As defined by Verilog Implementation */ + #define Timer_1_CTRL_MODE_SHIFT 0x01u + #define Timer_1_CTRL_MODE_MASK ((uint8)((uint8)0x07u << Timer_1_CTRL_MODE_SHIFT)) + #endif /* (CY_PSOC5A) */ + #if (CY_PSOC3 || CY_PSOC5LP) + /* Control3 Register Bit Locations */ + #define Timer_1_CTRL_RCOD_SHIFT 0x02u + #define Timer_1_CTRL_ENBL_SHIFT 0x00u + #define Timer_1_CTRL_MODE_SHIFT 0x00u + + /* Control3 Register Bit Masks */ + #define Timer_1_CTRL_RCOD_MASK ((uint8)((uint8)0x03u << Timer_1_CTRL_RCOD_SHIFT)) /* ROD and COD bit masks */ + #define Timer_1_CTRL_ENBL_MASK ((uint8)((uint8)0x80u << Timer_1_CTRL_ENBL_SHIFT)) /* HW_EN bit mask */ + #define Timer_1_CTRL_MODE_MASK ((uint8)((uint8)0x03u << Timer_1_CTRL_MODE_SHIFT)) /* Run mode bit mask */ + + #define Timer_1_CTRL_RCOD ((uint8)((uint8)0x03u << Timer_1_CTRL_RCOD_SHIFT)) + #define Timer_1_CTRL_ENBL ((uint8)((uint8)0x80u << Timer_1_CTRL_ENBL_SHIFT)) + #endif /* (CY_PSOC3 || CY_PSOC5LP) */ + + /*RT1 Synch Constants: Applicable for PSoC3 and PSoC5LP */ + #define Timer_1_RT1_SHIFT 0x04u + /* Sync TC and CMP bit masks */ + #define Timer_1_RT1_MASK ((uint8)((uint8)0x03u << Timer_1_RT1_SHIFT)) + #define Timer_1_SYNC ((uint8)((uint8)0x03u << Timer_1_RT1_SHIFT)) + #define Timer_1_SYNCDSI_SHIFT 0x00u + /* Sync all DSI inputs with Mask */ + #define Timer_1_SYNCDSI_MASK ((uint8)((uint8)0x0Fu << Timer_1_SYNCDSI_SHIFT)) + /* Sync all DSI inputs */ + #define Timer_1_SYNCDSI_EN ((uint8)((uint8)0x0Fu << Timer_1_SYNCDSI_SHIFT)) + + #define Timer_1_CTRL_MODE_PULSEWIDTH ((uint8)((uint8)0x01u << Timer_1_CTRL_MODE_SHIFT)) + #define Timer_1_CTRL_MODE_PERIOD ((uint8)((uint8)0x02u << Timer_1_CTRL_MODE_SHIFT)) + #define Timer_1_CTRL_MODE_CONTINUOUS ((uint8)((uint8)0x00u << Timer_1_CTRL_MODE_SHIFT)) + + /* Status Register Bit Locations */ + /* As defined in Register Map, part of TMRX_SR0 register */ + #define Timer_1_STATUS_TC_SHIFT 0x07u + /* As defined in Register Map, part of TMRX_SR0 register, Shared with Compare Status */ + #define Timer_1_STATUS_CAPTURE_SHIFT 0x06u + /* As defined in Register Map, part of TMRX_SR0 register */ + #define Timer_1_STATUS_TC_INT_MASK_SHIFT (Timer_1_STATUS_TC_SHIFT - 0x04u) + /* As defined in Register Map, part of TMRX_SR0 register, Shared with Compare Status */ + #define Timer_1_STATUS_CAPTURE_INT_MASK_SHIFT (Timer_1_STATUS_CAPTURE_SHIFT - 0x04u) + + /* Status Register Bit Masks */ + #define Timer_1_STATUS_TC ((uint8)((uint8)0x01u << Timer_1_STATUS_TC_SHIFT)) + #define Timer_1_STATUS_CAPTURE ((uint8)((uint8)0x01u << Timer_1_STATUS_CAPTURE_SHIFT)) + /* Interrupt Enable Bit-Mask for interrupt on TC */ + #define Timer_1_STATUS_TC_INT_MASK ((uint8)((uint8)0x01u << Timer_1_STATUS_TC_INT_MASK_SHIFT)) + /* Interrupt Enable Bit-Mask for interrupt on Capture */ + #define Timer_1_STATUS_CAPTURE_INT_MASK ((uint8)((uint8)0x01u << Timer_1_STATUS_CAPTURE_INT_MASK_SHIFT)) + +#else /* UDB Registers and Register Constants */ + + + /*************************************** + * UDB Registers + ***************************************/ + + #define Timer_1_STATUS (* (reg8 *) Timer_1_TimerUDB_nrstSts_stsreg__STATUS_REG ) + #define Timer_1_STATUS_MASK (* (reg8 *) Timer_1_TimerUDB_nrstSts_stsreg__MASK_REG) + #define Timer_1_STATUS_AUX_CTRL (* (reg8 *) Timer_1_TimerUDB_nrstSts_stsreg__STATUS_AUX_CTL_REG) + #define Timer_1_CONTROL (* (reg8 *) Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__CONTROL_REG ) + + #if(Timer_1_Resolution <= 8u) /* 8-bit Timer */ + #define Timer_1_CAPTURE_LSB (* (reg8 *) Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG ) + #define Timer_1_CAPTURE_LSB_PTR ((reg8 *) Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG ) + #define Timer_1_PERIOD_LSB (* (reg8 *) Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG ) + #define Timer_1_PERIOD_LSB_PTR ((reg8 *) Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG ) + #define Timer_1_COUNTER_LSB (* (reg8 *) Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG ) + #define Timer_1_COUNTER_LSB_PTR ((reg8 *) Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG ) + #elif(Timer_1_Resolution <= 16u) /* 8-bit Timer */ + #if(CY_PSOC3) /* 8-bit addres space */ + #define Timer_1_CAPTURE_LSB (* (reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG ) + #define Timer_1_CAPTURE_LSB_PTR ((reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG ) + #define Timer_1_PERIOD_LSB (* (reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG ) + #define Timer_1_PERIOD_LSB_PTR ((reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG ) + #define Timer_1_COUNTER_LSB (* (reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG ) + #define Timer_1_COUNTER_LSB_PTR ((reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG ) + #else /* 16-bit address space */ + #define Timer_1_CAPTURE_LSB (* (reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_F0_REG ) + #define Timer_1_CAPTURE_LSB_PTR ((reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_F0_REG ) + #define Timer_1_PERIOD_LSB (* (reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_D0_REG ) + #define Timer_1_PERIOD_LSB_PTR ((reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_D0_REG ) + #define Timer_1_COUNTER_LSB (* (reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_A0_REG ) + #define Timer_1_COUNTER_LSB_PTR ((reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_A0_REG ) + #endif /* CY_PSOC3 */ + #elif(Timer_1_Resolution <= 24u)/* 24-bit Timer */ + #define Timer_1_CAPTURE_LSB (* (reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG ) + #define Timer_1_CAPTURE_LSB_PTR ((reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG ) + #define Timer_1_PERIOD_LSB (* (reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG ) + #define Timer_1_PERIOD_LSB_PTR ((reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG ) + #define Timer_1_COUNTER_LSB (* (reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG ) + #define Timer_1_COUNTER_LSB_PTR ((reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG ) + #else /* 32-bit Timer */ + #if(CY_PSOC3 || CY_PSOC5) /* 8-bit address space */ + #define Timer_1_CAPTURE_LSB (* (reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG ) + #define Timer_1_CAPTURE_LSB_PTR ((reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG ) + #define Timer_1_PERIOD_LSB (* (reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG ) + #define Timer_1_PERIOD_LSB_PTR ((reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG ) + #define Timer_1_COUNTER_LSB (* (reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG ) + #define Timer_1_COUNTER_LSB_PTR ((reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG ) + #else /* 32-bit address space */ + #define Timer_1_CAPTURE_LSB (* (reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__32BIT_F0_REG ) + #define Timer_1_CAPTURE_LSB_PTR ((reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__32BIT_F0_REG ) + #define Timer_1_PERIOD_LSB (* (reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__32BIT_D0_REG ) + #define Timer_1_PERIOD_LSB_PTR ((reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__32BIT_D0_REG ) + #define Timer_1_COUNTER_LSB (* (reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__32BIT_A0_REG ) + #define Timer_1_COUNTER_LSB_PTR ((reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__32BIT_A0_REG ) + #endif /* CY_PSOC3 || CY_PSOC5 */ + #endif + + #if (Timer_1_UsingHWCaptureCounter) + #define Timer_1_CAP_COUNT (*(reg8 *) Timer_1_TimerUDB_sCapCount_counter__PERIOD_REG ) + #define Timer_1_CAP_COUNT_PTR ( (reg8 *) Timer_1_TimerUDB_sCapCount_counter__PERIOD_REG ) + #define Timer_1_CAPTURE_COUNT_CTRL (*(reg8 *) Timer_1_TimerUDB_sCapCount_counter__CONTROL_AUX_CTL_REG ) + #define Timer_1_CAPTURE_COUNT_CTRL_PTR ( (reg8 *) Timer_1_TimerUDB_sCapCount_counter__CONTROL_AUX_CTL_REG ) + #endif /* (Timer_1_UsingHWCaptureCounter) */ + + + /*************************************** + * Register Constants + ***************************************/ + + /* Control Register Bit Locations */ + #define Timer_1_CTRL_INTCNT_SHIFT 0x00u /* As defined by Verilog Implementation */ + #define Timer_1_CTRL_TRIG_MODE_SHIFT 0x02u /* As defined by Verilog Implementation */ + #define Timer_1_CTRL_TRIG_EN_SHIFT 0x04u /* As defined by Verilog Implementation */ + #define Timer_1_CTRL_CAP_MODE_SHIFT 0x05u /* As defined by Verilog Implementation */ + #define Timer_1_CTRL_ENABLE_SHIFT 0x07u /* As defined by Verilog Implementation */ + + /* Control Register Bit Masks */ + #define Timer_1_CTRL_INTCNT_MASK ((uint8)((uint8)0x03u << Timer_1_CTRL_INTCNT_SHIFT)) + #define Timer_1_CTRL_TRIG_MODE_MASK ((uint8)((uint8)0x03u << Timer_1_CTRL_TRIG_MODE_SHIFT)) + #define Timer_1_CTRL_TRIG_EN ((uint8)((uint8)0x01u << Timer_1_CTRL_TRIG_EN_SHIFT)) + #define Timer_1_CTRL_CAP_MODE_MASK ((uint8)((uint8)0x03u << Timer_1_CTRL_CAP_MODE_SHIFT)) + #define Timer_1_CTRL_ENABLE ((uint8)((uint8)0x01u << Timer_1_CTRL_ENABLE_SHIFT)) + + /* Bit Counter (7-bit) Control Register Bit Definitions */ + /* As defined by the Register map for the AUX Control Register */ + #define Timer_1_CNTR_ENABLE 0x20u + + /* Status Register Bit Locations */ + #define Timer_1_STATUS_TC_SHIFT 0x00u /* As defined by Verilog Implementation */ + #define Timer_1_STATUS_CAPTURE_SHIFT 0x01u /* As defined by Verilog Implementation */ + #define Timer_1_STATUS_TC_INT_MASK_SHIFT Timer_1_STATUS_TC_SHIFT + #define Timer_1_STATUS_CAPTURE_INT_MASK_SHIFT Timer_1_STATUS_CAPTURE_SHIFT + #define Timer_1_STATUS_FIFOFULL_SHIFT 0x02u /* As defined by Verilog Implementation */ + #define Timer_1_STATUS_FIFONEMP_SHIFT 0x03u /* As defined by Verilog Implementation */ + #define Timer_1_STATUS_FIFOFULL_INT_MASK_SHIFT Timer_1_STATUS_FIFOFULL_SHIFT + + /* Status Register Bit Masks */ + /* Sticky TC Event Bit-Mask */ + #define Timer_1_STATUS_TC ((uint8)((uint8)0x01u << Timer_1_STATUS_TC_SHIFT)) + /* Sticky Capture Event Bit-Mask */ + #define Timer_1_STATUS_CAPTURE ((uint8)((uint8)0x01u << Timer_1_STATUS_CAPTURE_SHIFT)) + /* Interrupt Enable Bit-Mask */ + #define Timer_1_STATUS_TC_INT_MASK ((uint8)((uint8)0x01u << Timer_1_STATUS_TC_SHIFT)) + /* Interrupt Enable Bit-Mask */ + #define Timer_1_STATUS_CAPTURE_INT_MASK ((uint8)((uint8)0x01u << Timer_1_STATUS_CAPTURE_SHIFT)) + /* NOT-Sticky FIFO Full Bit-Mask */ + #define Timer_1_STATUS_FIFOFULL ((uint8)((uint8)0x01u << Timer_1_STATUS_FIFOFULL_SHIFT)) + /* NOT-Sticky FIFO Not Empty Bit-Mask */ + #define Timer_1_STATUS_FIFONEMP ((uint8)((uint8)0x01u << Timer_1_STATUS_FIFONEMP_SHIFT)) + /* Interrupt Enable Bit-Mask */ + #define Timer_1_STATUS_FIFOFULL_INT_MASK ((uint8)((uint8)0x01u << Timer_1_STATUS_FIFOFULL_SHIFT)) + + #define Timer_1_STATUS_ACTL_INT_EN 0x10u /* As defined for the ACTL Register */ + + /* Datapath Auxillary Control Register definitions */ + #define Timer_1_AUX_CTRL_FIFO0_CLR 0x01u /* As defined by Register map */ + #define Timer_1_AUX_CTRL_FIFO1_CLR 0x02u /* As defined by Register map */ + #define Timer_1_AUX_CTRL_FIFO0_LVL 0x04u /* As defined by Register map */ + #define Timer_1_AUX_CTRL_FIFO1_LVL 0x08u /* As defined by Register map */ + #define Timer_1_STATUS_ACTL_INT_EN_MASK 0x10u /* As defined for the ACTL Register */ + +#endif /* Implementation Specific Registers and Register Constants */ + +#endif /* CY_Timer_v2_30_Timer_1_H */ + + +/* [] END OF FILE */ diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Timer_1_PM.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Timer_1_PM.c new file mode 100644 index 0000000..897d3a7 --- /dev/null +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/Timer_1_PM.c @@ -0,0 +1,194 @@ +/******************************************************************************* +* File Name: Timer_1_PM.c +* Version 2.50 +* +* Description: +* This file provides the power management source code to API for the +* Timer. +* +* Note: +* None +* +******************************************************************************* +* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* You may use this file only in accordance with the license, terms, conditions, +* disclaimers, and limitations in the end user license agreement accompanying +* the software package with which this file was provided. +********************************************************************************/ + +#include "Timer_1.h" +static Timer_1_backupStruct Timer_1_backup; + + +/******************************************************************************* +* Function Name: Timer_1_SaveConfig +******************************************************************************** +* +* Summary: +* Save the current user configuration +* +* Parameters: +* void +* +* Return: +* void +* +* Global variables: +* Timer_1_backup: Variables of this global structure are modified to +* store the values of non retention configuration registers when Sleep() API is +* called. +* +*******************************************************************************/ +void Timer_1_SaveConfig(void) +{ + #if (!Timer_1_UsingFixedFunction) + /* Backup the UDB non-rentention registers for CY_UDB_V0 */ + #if (CY_UDB_V0) + Timer_1_backup.TimerUdb = Timer_1_ReadCounter(); + Timer_1_backup.TimerPeriod = Timer_1_ReadPeriod(); + Timer_1_backup.InterruptMaskValue = Timer_1_STATUS_MASK; + #if (Timer_1_UsingHWCaptureCounter) + Timer_1_backup.TimerCaptureCounter = Timer_1_ReadCaptureCount(); + #endif /* Backup the UDB non-rentention register capture counter for CY_UDB_V0 */ + #endif /* Backup the UDB non-rentention registers for CY_UDB_V0 */ + + #if (CY_UDB_V1) + Timer_1_backup.TimerUdb = Timer_1_ReadCounter(); + Timer_1_backup.InterruptMaskValue = Timer_1_STATUS_MASK; + #if (Timer_1_UsingHWCaptureCounter) + Timer_1_backup.TimerCaptureCounter = Timer_1_ReadCaptureCount(); + #endif /* Back Up capture counter register */ + #endif /* Backup non retention registers, interrupt mask and capture counter for CY_UDB_V1 */ + + #if(!Timer_1_ControlRegRemoved) + Timer_1_backup.TimerControlRegister = Timer_1_ReadControlRegister(); + #endif /* Backup the enable state of the Timer component */ + #endif /* Backup non retention registers in UDB implementation. All fixed function registers are retention */ +} + + +/******************************************************************************* +* Function Name: Timer_1_RestoreConfig +******************************************************************************** +* +* Summary: +* Restores the current user configuration. +* +* Parameters: +* void +* +* Return: +* void +* +* Global variables: +* Timer_1_backup: Variables of this global structure are used to +* restore the values of non retention registers on wakeup from sleep mode. +* +*******************************************************************************/ +void Timer_1_RestoreConfig(void) +{ + #if (!Timer_1_UsingFixedFunction) + /* Restore the UDB non-rentention registers for CY_UDB_V0 */ + #if (CY_UDB_V0) + /* Interrupt State Backup for Critical Region*/ + uint8 Timer_1_interruptState; + + Timer_1_WriteCounter(Timer_1_backup.TimerUdb); + Timer_1_WritePeriod(Timer_1_backup.TimerPeriod); + /* CyEnterCriticalRegion and CyExitCriticalRegion are used to mark following region critical*/ + /* Enter Critical Region*/ + Timer_1_interruptState = CyEnterCriticalSection(); + /* Use the interrupt output of the status register for IRQ output */ + Timer_1_STATUS_AUX_CTRL |= Timer_1_STATUS_ACTL_INT_EN_MASK; + /* Exit Critical Region*/ + CyExitCriticalSection(Timer_1_interruptState); + Timer_1_STATUS_MASK =Timer_1_backup.InterruptMaskValue; + #if (Timer_1_UsingHWCaptureCounter) + Timer_1_SetCaptureCount(Timer_1_backup.TimerCaptureCounter); + #endif /* Restore the UDB non-rentention register capture counter for CY_UDB_V0 */ + #endif /* Restore the UDB non-rentention registers for CY_UDB_V0 */ + + #if (CY_UDB_V1) + Timer_1_WriteCounter(Timer_1_backup.TimerUdb); + Timer_1_STATUS_MASK =Timer_1_backup.InterruptMaskValue; + #if (Timer_1_UsingHWCaptureCounter) + Timer_1_SetCaptureCount(Timer_1_backup.TimerCaptureCounter); + #endif /* Restore Capture counter register*/ + #endif /* Restore up non retention registers, interrupt mask and capture counter for CY_UDB_V1 */ + + #if(!Timer_1_ControlRegRemoved) + Timer_1_WriteControlRegister(Timer_1_backup.TimerControlRegister); + #endif /* Restore the enable state of the Timer component */ + #endif /* Restore non retention registers in the UDB implementation only */ +} + + +/******************************************************************************* +* Function Name: Timer_1_Sleep +******************************************************************************** +* +* Summary: +* Stop and Save the user configuration +* +* Parameters: +* void +* +* Return: +* void +* +* Global variables: +* Timer_1_backup.TimerEnableState: Is modified depending on the +* enable state of the block before entering sleep mode. +* +*******************************************************************************/ +void Timer_1_Sleep(void) +{ + #if(!Timer_1_ControlRegRemoved) + /* Save Counter's enable state */ + if(Timer_1_CTRL_ENABLE == (Timer_1_CONTROL & Timer_1_CTRL_ENABLE)) + { + /* Timer is enabled */ + Timer_1_backup.TimerEnableState = 1u; + } + else + { + /* Timer is disabled */ + Timer_1_backup.TimerEnableState = 0u; + } + #endif /* Back up enable state from the Timer control register */ + Timer_1_Stop(); + Timer_1_SaveConfig(); +} + + +/******************************************************************************* +* Function Name: Timer_1_Wakeup +******************************************************************************** +* +* Summary: +* Restores and enables the user configuration +* +* Parameters: +* void +* +* Return: +* void +* +* Global variables: +* Timer_1_backup.enableState: Is used to restore the enable state of +* block on wakeup from sleep mode. +* +*******************************************************************************/ +void Timer_1_Wakeup(void) +{ + Timer_1_RestoreConfig(); + #if(!Timer_1_ControlRegRemoved) + if(Timer_1_backup.TimerEnableState == 1u) + { /* Enable Timer's operation */ + Timer_1_Enable(); + } /* Do nothing if Timer was disabled before */ + #endif /* Remove this code section if Control register is removed */ +} + + +/* [] END OF FILE */ diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cm3gcc.ld b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cm3gcc.ld index 6b98ccb..34c064c 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cm3gcc.ld +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cm3gcc.ld @@ -34,7 +34,6 @@ EXTERN(__cs3_reset Reset) EXTERN(__cs3_start_asm __cs3_start_asm_generic_m) /* Bring in the interrupt routines & vector */ INCLUDE micro-names.inc -EXTERN(__cs3_interrupt_vector_micro) EXTERN(__cs3_start_c main __cs3_stack __cs3_heap_end) /* Provide fall-back values */ @@ -50,10 +49,11 @@ SECTIONS .text : { CREATE_OBJECT_SYMBOLS - __cs3_interrupt_vector = __cs3_interrupt_vector_micro; + PROVIDE(__cs3_interrupt_vector = RomVectors); + *(.romvectors) *(.cs3.interrupt_vector) /* Make sure we pulled in an interrupt vector. */ - ASSERT (. != __cs3_interrupt_vector_micro, "No interrupt vector"); + ASSERT (. != __cs3_interrupt_vector, "No interrupt vector"); PROVIDE(__cs3_reset = Reset); *(.cs3.reset) @@ -133,7 +133,7 @@ SECTIONS __cs3_regions = .; LONG (0) LONG (__cs3_region_init_ram) - LONG (__cs3_region_start_ram) + LONG (__cs3_region_start_data) LONG (__cs3_region_init_size_ram) LONG (__cs3_region_zero_size_ram) __cs3_regions_end = .; @@ -142,13 +142,23 @@ SECTIONS _etext = .; } >rom - .data : ALIGN(8) + .ramvectors (NOLOAD) : ALIGN(8) { __cs3_region_start_ram = .; *(.cs3.region-head.ram) ASSERT (. == __cs3_region_start_ram, ".cs3.region-head.ram not permitted"); - *(.ramvectors) - + KEEP(*(.ramvectors)) + } + + .noinit (NOLOAD) : ALIGN(8) + { + KEEP(*(.noinit)) + } + + .data : ALIGN(8) + { + __cs3_region_start_data = .; + KEEP(*(.jcr)) *(.got.plt) *(.got) *(.shdata) @@ -167,12 +177,14 @@ SECTIONS _end = .; __end = .; } >ram AT>rom + __cs3_region_end_ram = __cs3_region_start_ram + LENGTH(ram); __cs3_region_size_ram = LENGTH(ram); __cs3_region_init_ram = LOADADDR (.data); __cs3_region_init_size_ram = _edata - ADDR (.data); __cs3_region_zero_size_ram = _end - _edata; + .stab 0 (NOLOAD) : { *(.stab) } .stabstr 0 (NOLOAD) : { *(.stabstr) } /* DWARF debug sections. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/config.hex b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/config.hex index ac0200d..6cb0389 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/config.hex +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/config.hex @@ -1,100 +1,130 @@ -:200000000000010001010000520080000000010086003800060088008600680001000000CF -:2000200001000000010000000000FC00400000001E0101017000800000002200000044010A -:20004000040000000000005130FF07FF4020F0050800000040000000040404041101000057 -:2000600040A840200000000000000000000000000000000000000000000000000000000038 -:2000800030004C02000700182C2CD11300C00000800010009C0022800021030A0000003497 -:2000A0001400000900C000000940F00000000000003FE0001F0000C0008008000000004064 -:2000C0004506000000E00B0C16FFFFFF0000F0440C0000000000000004040400010100007D -:2000E000000000000000C000000040020000000000000000000000000000000000000000FE -:200100000000010000000000000000000000000000000000000000000000000000000000DE -:200120000400000002000000000000000000000002000000040001000000000000001100A1 -:20014000000000000000000000000000000000000000000001000000040000040010000086 +:20000000A402000DA412002400120028800D244002000D00374D480013108020A44D000099 +:20002000804D0000244D80003501CA32000024000F0F0040F0301040200002220000400456 +:2000400000000000000000000000000000000000000000000900000004040004000000008B +:20006000000000000000000000000000000000000000000000000000000000000000000080 +:2000800000004000010700080C09330618002600000C0003E80010001B0F2400000000002F +:2000A000000000008000000080000000800000004008380407018002A0AA080000004155CA +:2000C000000000000000000000000000000000000000000000000000040400040000000014 +:2000E000000000000000000000000000000000000000000000000000000000000000000000 +:200100000000000000000000000000000000000000000000020000000000000000000000DD +:200120000000000000000000000001000000000000000100020000000000000000001000AB +:20014000000000000000000000000000000000000000000040000000040000040000000057 :2001600000000000000000000000000000000000000000000000000000000000000000007F -:20018000D40020000708081118192100001100088019200000C80537285D42A20501000AA2 -:2001A00005190000051000410566008900000500002000C0001CFF030000C08C0000000187 -:2001C0006302500004DEFB0C1FFFFFFF2200F00C040000000000022C040404040000000005 +:20018000050000001866218905190000D41120080001000A28C84237805D20A207190800CC +:2001A00005190000000805110500000000100541FF0300C0001C00200000030E0000004059 +:2001C0003602500004DEFC0B1FFFFFFF2200F00C040000000000022004040404000000003E :2001E0000000C00040011011C0010011400140010000000000000000000000000000000089 -:20020000A4000000248D8000A4420038020D0D8000002400808D000013108000008D0000EE -:20022000A48D0000373148423502CA648002240D0F80000FF070108020200208000040016A -:20024000000000000000000000000000000000000000000009000000040400040000000089 -:2002600000000000000000000000000000000000000000000000000000000000000000007E -:200280000000000009001600080110064000000000040003650002000B071400000000004C -:2002A000000020004000000003001C00000000002004070118024000802A28000000411511 -:2002C000000000000000000000000000000000000000000000000000040400040000000012 -:2002E0000000000000000000000000000000000000000000000000000000000000000000FE -:200300000000000000000000000000000000000000000F0F000000000000000000000000BF -:200320000000000000000000000000000000000000000000000000000000000000000000BD -:20034000000000000000000000000000000000000400000000000000000000000000000099 -:2003600000000000000000000000000000000000000000000000000000000000000000007D -:2003800000000000000000000000000001000000000000000000000000000000000000005C -:2003A000000000000000000000008000000000000000000000000000000000000400800039 -:2003C0000000000000000000000000000000400000000000000000000000000000000000DD -:2003E0000000000000000000000000000000000000000000000000000000000000000000FD -:200400000000000004000000000000000000000000000000000000000000000000000000D8 -:200420000000000000000000000000000000000000000000000000000000400004008000F8 +:200200000100000000003C00060128002600080026021800120020000100000000000100D0 +:20022000010000000000000001000000000001001E000102000120010000020000004444EE +:200240005104000000ECB0000BFFFFFF0000F0440C00000001000000040404041111000032 +:20026000000000000000C0000000400200000000000000000000000000000000000000007C +:20028000000000009C21220A000000022C00D13430C04C00000003098000108000000000EA +:2002A000000700180940F000142C001300C0000000001FC0E000003F0008200000000004A9 +:2002C000020000000000100518FF07FF4020F005080000000000000004040400010100007F +:2002E00040A8402000000000000000000000000000000000000000000000000000000000B6 +:2003000000000000010008000000000000000000000000000F0000000000000002001800AB +:20032000040018000000000000000000000027001000080007002000000008000000010032 +:20034000240000000000000000FFFFFF0000000118000000010000000B000B0B099900009F +:200360004000400040408000800080008000800000000000000000000000000000000000FD +:20038000000000000002000000000000000000000000000300000000000000070000000051 +:2003A0000000000000060000000000000000000500000000000000070000008000000000AB +:2003C0006400000000EC020007FFFFFF008303011800000000000800000408041099000067 +:2003E00040004000404080008000800080008000000000000000000000000000000000007D +:20040000000000000000000000000000000000000000000F0F0000000000000000000000BE +:2004200000000000000000000000000000000000000000000D0000000000000000000000AF :2004400000000000000000000000000000000000000000000000000000000000000000009C -:2004600000000000000000000000000000000000000000000000000000000000000000007C +:2004600000000000000000000000001000000000000000000000000000000000000000006C :2004800000000000000000000000000000000000000000000000000000000000000000005C -:2004A0000000400000000000000000000000000000000000000000000000000000000000FC -:2004C00000000000000000000000000000000000000000000000000000000000000000001C +:2004A00000000000000000000000000000000000000000000000000000000000000000003C +:2004C00000000000000000000000000000000000000000000000000000000010000000000C :2004E0000000000000000000000000000000000000000000000000000000000000000000FC -:20050000000000000400800000000000000000000000000000000000000000000000000057 +:200500000000000000000000000000000000000000000000000000000000000000000000DB :200520000000000000000000000000000000000000000000000000000000000000000000BB -:2005400000000000000000000000000000000000000000000000000000000000000000009B -:20056000080000000000000000000000000000000000000000000100010000000000000071 -:2005800000000000000000000000000000000000000000000000000000000000000000005B -:2005A00000000000000000000000000000000000000000000000000000000000000000003B -:2005C00000000000000000000000000000000000000000000000000000000000000000001B +:2005400000000010000000000000000000000000000000000000000000000000000000008B +:2005600000000000000000000000000000000000000000000000000000000000000000007B +:20058000000000000000000000000000000000000000000000000000040000000000000057 +:2005A00000000000000100000000000000000000000000000000000000000000000000003A +:2005C000000100000400000000000000000000000000000000000000000000000000000016 :2005E0000000000000000000000000000000000000000000000000000000000000000000FB -:2006000000000000000000000000000080000000000000000000000000000000000000005A +:200600000800000000000000000000000000000000000000000002000100000000000000CF :200620000000000000000000000000000000000000000000000000000000000000000000BA -:200640000000000000000000000000000084000000200000000000000000000000000000F6 -:2006600000000000000000000000000000000000000000000000000000000000000000007A -:2006800000000000000000000000000000000000000000000000000000000000000000005A -:2006A00000000000000000000000000000000000000000000000000000000000000000003A -:2006C00000000000000000000000000000000000000000000000000000000000000000001A -:2006E0000000000000000000000000000000000000000000000000000000000000000000FA -:200700000000000020000000000008000000000000000000000000000000000000000000B1 -:2007200040140040001000210008A4000000240000400026402000044060040080102110F5 -:20074000022401002000220000A00220000000000820004000001001004400100000100091 -:200760000000000000000000000000000000000000000000000000000004228000000000D3 -:20078000004000000000000000000000000010050000000000000000000000000000000004 -:2007A000000000000000200040000100100000000074801440000020400402E20020000018 -:2007C0000808002001000200000000000000000200000000000000000000000000000000E4 -:2007E000EF006E007F00000000000F00AE002E000000000000000F0008000000000000001B -:20080000000000000000C00000000800000000000000000000000000000000000000000010 -:20082000042000800000400000000AA0000000000844000210010000000000800000090141 -:20084000141054B4000000000020060000000000000055200000000000540000000000007D -:200860001400000200000000012600000000000000284440000000000000000000811800F6 -:2008800040000000000000000C540240000000000000020200000000000000000000000072 -:2008A000000000000000000000000000000002000001100000440396508000000022000254 -:2008C0000000000004200000000000000000000000000000000000010000000000000000F3 -:2008E0001E000F003F000000000007000F000E0007000C000000F000010000000000000064 -:20090000000000000000100000004000000000000000000000000000000000000000000087 -:2009200009420008001080000004560012002800020408020000402010904C200000280894 -:20094000000008600000008100000000000000680000000040200880080000000000C11481 -:20096000000000010000800000000000000104400600000000044000000000000000000067 -:20098000112000000000000000000000000000000000000000000000000000000000000026 -:2009A000000000000000000000000000000000000000000000000000000000000000000037 -:2009C000000000000000000000000000000000000000000000000000000000000000000017 -:2009E0005F007F005F0000000000E0007000F20081003000000000000E00000000000000B9 -:200A00000000000000000000000000000000000000000000000000000000000000000000D6 -:200A2000000000008000000000000010800000000000000000000010000000008000000016 -:200A4000000000008000000000000000000000000000000000000000000000000000000016 -:200A6000000000000000000000000000000000000000000000000000000000000000000076 -:200A8000000000000000400000000000000000000000000000000000000000000000000016 -:200AA00000000000000000000000000008000000000000000000001000000000800000009E -:200AC00000000000880000000000000000000000000000000000000400000000000000008A +:2006400004000000000000000000120000000000820000000000000004005210000000009C +:2006600000000000000000010000000000000012000000000000200100000000000800003E +:20068000040080000000800000000000000A00200000000080008000000A40008000000062 +:2006A000000000000100000200000000000000000200000000000000010000000000000133 +:2006C000000000000000000000000000000000000000002000000000800000000000000179 +:2006E0000004200200000000000000000000000000000000000000000000000000000000D4 +:20070000040005000900000000005000A00040008500200000001B001000000000001100B6 +:200720000000000000000000000000000000000000000000000000000000000000000000B9 +:200740000000000000000000000000000000000000000020000000008000000000000001F8 +:200760000004200200000000000000000000000000000000800000000000000000000000D3 +:20078000000000000000000000000000000000000000000000000000000000000000000059 +:2007A000000000000000000010000000000000000000000000000000000000000000000029 +:2007C0000000000000000000000000000000000000000020000000000000000000000001F8 +:2007E0000004200200000000000000000000000000000000000000000000000000000000D3 +:200800000000000000000000000000000000000000000000000000000000000000000000D8 +:200820000000000000000000000000000000000000000000000000000000000000000000B8 +:20084000000000000000000000000000000000000000000000000000000000000000000098 +:20086000000000000000000000000000000000000000000000000000000000000000000078 +:20088000000000000000000000000000000000000000000000000000000000000000000058 +:2008A000000000000000000000000400000000000000000000000000000000000000000034 +:2008C000202220010400000120004022000060088840000000200008004840020400201018 +:2008E0000040240800400020000000004200001A0001000000002801000010000080900482 +:200900000040000100000020120100000000000000100000000410040061080000000000D2 +:200920000000000000000000000000000000000000000000000000000000000000000000B7 +:20094000000000000000000000000000000000000040100600000000600200000008800057 +:200960008800080800001000000000020000002000000000000000000000000000000000AD +:20098000AF007F006B0000000000F000E10074002900080000000F00000000000000000039 +:2009A000000000000000000000000400000000000000000000000000000000000000000033 +:2009C0006006000000000000400800080000200088402000000004004000000000001020E5 +:2009E000002842100000000020024200000000008028020800000000085C000400000000FF +:200A00000824000200000000011400120000000000005C0400000000000000000000000021 +:200A200000000002000810029CD00800000000000000020000000000000000002000040000 +:200A4000000000000000000048000000000000000800000000808010000000002816C20036 +:200A6000010020018C200200002100080000000000000000000080400000000000000000BD +:200A80000F0027004F00000000000B000F000E0007000C000000000078000000000000001E +:200AA0000000000000000000000050000000000000000000000000000000000000000000E6 +:200AC000000000000000000000000000000000000000000000000000000000000000000016 :200AE0000000000000000000000000000000000000000000000000000000000000000000F6 :200B00000000000000000000000000000000000000000000000000000000000000000000D5 -:200B20000000000000000000000000000000000000000000000000000000000000000000B5 -:200B4000000000000000000000000000000000000000000000000000000000000000000095 -:200B600000000000000000000000000000000000080000008000000080000000000000105D -:200B800000000008000000000000000000000000000000000000000000000000000000004D -:200BA000000000000000000000000000000000000000000000000000000000000000000035 -:200BC000000000000000000000000000000000000000000000000000000000000000000015 -:200BE0000000000000000000000000000000000000000000E00020004000000000000000B5 -:200C00000000000000000000000000000000000000000000000000000000000000000000D4 -:200C200003001000000000000300010000000000010000616000600000000000007F7F007D -:200C4000000000008F00008F80008F0000000000604000000000000003890000000000003B +:200B20000C00000000000000000000000000000000000000000000000000000000000000A9 +:200B4000480200000410800248004800002020001002421000400014084048010400204236 +:200B600002092000000080683800020000000000C800200000001001488200100000140041 +:200B80000000000000000000000000000000000000000000000000000124800000000000B0 +:200BA00000400000000000000000000000401415000000000000000000000000000000008C +:200BC0000400000001080002000000400400002200000000000000000000000000000000A0 +:200BE0000000000000000000000000000000000000000000000000000000000000000000F5 +:200C0000FD006F00EF00000000000700AE006F000000000000000F0008000000000000003E +:200C20000C0000000000900000000000000000000000000000000000000000000000000018 +:200C4000000000000000000000000000000000000000000000000000000000000000000094 +:200C60000000000000000000000000000000000000000000008000000000000000000000F4 +:200C8000000000000000000000000000000000000000000000000000000000000000000054 +:200CA000000000000000000000000000000000000000000000000000000000000000000034 +:200CC000000000000000000000000000000000000000000000000000000000000000000014 +:200CE000008000000000000000000000000000000000000000000000000000000000000074 +:200D00000000000000000000000000000000000000000000000000000000000000000000D3 +:200D20000000000000000000000000000000000000000000000000000000000000000000B3 +:200D4000000000000000000000000000000000000000000000000000000000000000000093 +:200D6000000000000000000000000000000000000000000000000000000000000000000073 +:200D8000000000000000000010000000000000000000000000000000000000000000000043 +:200DA000000000000000000000000000000000000000000000000000000000000000000033 +:200DC000000000000000000000000000000000000000000000000000000000000000000013 +:200DE0000000000000000000000000000000000400000000000000000000000000000000EF +:200E00000000000000000000000000000000000000000000000000000000000000000000D2 +:200E20000000000000000000000000000000100000000000000000000000000000000000A2 +:200E400000000000000000000000000000000000000000000000000800000000000000008A +:200E6000000000000000000080000000000000000000000000000082000000000000000070 +:200E8000000000000000000000000000000000000000000000000000000000000000000052 +:200EA000000000000000000000002000000000000000000000000000000000000000000012 +:200EC000000000000000000000000000000000000000000000000000000000000000000012 +:200EE0000000000000000000000000000000000000000000000000000000000000000000F2 +:200F000000000000000000000000000000000000800000020000008000000000000000824D +:200F20000000000000000008000000000000000000000000000000000000000000000000A9 +:200F400000000000000000000000000200000080000000000000000000000000000000000F +:200F6000000000000000000000000000000000000000000000000000000000000000000071 +:200F80000000000000000000000000000000000000000000E000A000800000000000000051 +:200FA000000000000000000000000000000000000000000000000000000000000000000031 +:200FC0000201100000000000000002010000000003001000000000000100030000000000E4 +:200FE000010000616000600000000000007F7F00000000009F00009F80009F000000000074 +:2010000040400000000000009C85000000000000000000000000000000000000000000002F :00000001FF diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/core_cm3_psoc5.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/core_cm3_psoc5.h index 7195e81..0809bd6 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/core_cm3_psoc5.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/core_cm3_psoc5.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: core_cm3_psoc5.h -* Version 3.30 +* Version 3.40 * * Description: * Provides important type information for the PSoC5. This includes types @@ -11,7 +11,7 @@ * System Reference Guide provided with PSoC Creator. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyPm.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyPm.c index d8f87b1..c9c2f3b 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyPm.c +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyPm.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: cyPm.c -* Version 3.30 +* Version 3.40 * * Description: * Provides an API for the power management. @@ -10,7 +10,7 @@ * System Reference Guide provided with PSoC Creator. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. @@ -194,7 +194,7 @@ void CyPmSaveClocks(void) } /* Need to change nothing if master clock source is IMO */ /* Bus clock - save divider and set it, if needed, to divide-by-one */ - cyPmClockBackup.clkBusDiv = ((uint16) CY_PM_CLK_BUS_MSB_DIV_REG << 8u) | CY_PM_CLK_BUS_LSB_DIV_REG; + cyPmClockBackup.clkBusDiv = (uint16) ((uint16) CY_PM_CLK_BUS_MSB_DIV_REG << 8u) | CY_PM_CLK_BUS_LSB_DIV_REG; if(CY_PM_BUS_CLK_DIV_BY_ONE != cyPmClockBackup.clkBusDiv) { CyBusClk_SetDivider(CY_PM_BUS_CLK_DIV_BY_ONE); @@ -456,7 +456,7 @@ void CyPmRestoreClocks(void) } /* Bus clock - restore divider, if needed */ - if(cyPmClockBackup.clkBusDiv != (((uint16) CY_PM_CLK_BUS_MSB_DIV_REG << 8u) | CY_PM_CLK_BUS_LSB_DIV_REG)) + if(cyPmClockBackup.clkBusDiv != ((uint16)((uint16) CY_PM_CLK_BUS_MSB_DIV_REG << 8u) | CY_PM_CLK_BUS_LSB_DIV_REG)) { CyBusClk_SetDivider(cyPmClockBackup.clkBusDiv); } @@ -861,7 +861,7 @@ void CyPmAltAct(uint16 wakeupTime, uint16 wakeupSource) * Reentrant: * No * -* Side Effects: +* Side Effects and Restrictions: * For PSoC 5 silicon the wakeup source is not selectable. In this case the * wakeupSource argument is ignored and any of the available wakeup sources will * wake the device. @@ -875,6 +875,15 @@ void CyPmAltAct(uint16 wakeupTime, uint16 wakeupSource) * measure Hibernate/Sleep regulator settling time after a reset. The holdoff * delay is measured using rising edges of the 1 kHz ILO. * +* For PSoC 3 silicon hardware buzz should be disabled before entering a sleep +* power mode. It is disabled by PSoC Creator during startup. +* If a Low Voltage Interrupt (LVI), High Voltage Interrupt (HVI) or Brown Out +* detect (power supply supervising capabilities) are required in a design +* during sleep, use the Central Time Wheel (CTW) to periodically wake the +* device, perform software buzz, and refresh the supervisory services. If LVI, +* HVI, or Brown Out is not required, then use of the CTW is not required. +* Refer to the device errata for more information. +* *******************************************************************************/ void CyPmSleep(uint8 wakeupTime, uint16 wakeupSource) { @@ -912,10 +921,18 @@ void CyPmSleep(uint8 wakeupTime, uint16 wakeupSource) #if(CY_PSOC3) - /* Hardware buzz expected to be disabled below for TO6 */ + /* Silicon Revision ID is below TO6 */ if(CYDEV_CHIP_REV_ACTUAL < 5u) { + /* Hardware buzz expected to be disabled in Sleep mode */ CYASSERT(0u == (CY_PM_PWRSYS_WAKE_TR2_REG & CY_PM_PWRSYS_WAKE_TR2_EN_BUZZ)); + + /* LVI/HVI requires hardware buzz to be enabled */ + if(0u != (CY_PM_RESET_CR1_REG & (CY_PM_RESET_CR1_HVIA_EN | + CY_PM_RESET_CR1_LVIA_EN | CY_PM_RESET_CR1_LVID_EN))) + { + CYASSERT(0u != 0u); + } } #endif /* (CY_PSOC3) */ @@ -1399,6 +1416,21 @@ static void CyPmHibSaveSet(void) /* Make the same preparations for Hibernate and Sleep modes */ CyPmHibSlpSaveSet(); + + + /*************************************************************************** + * Save and set power mode wakeup trim registers + ***************************************************************************/ + #if(CY_PSOC3 || CY_PSOC5LP) + + cyPmBackup.wakeupTrim0 = CY_PM_PWRSYS_WAKE_TR0_REG; + cyPmBackup.wakeupTrim1 = CY_PM_PWRSYS_WAKE_TR1_REG; + + CY_PM_PWRSYS_WAKE_TR0_REG = CY_PM_PWRSYS_WAKE_TR0; + CY_PM_PWRSYS_WAKE_TR1_REG = CY_PM_PWRSYS_WAKE_TR1; + + #endif /* (CY_PSOC3 || CY_PSOC5LP) */ + } @@ -1469,6 +1501,17 @@ static void CyPmHibRestore(void) } #endif /* (!CY_PSOC5A) */ + + + /*************************************************************************** + * Restore power mode wakeup trim registers + ***************************************************************************/ + #if(CY_PSOC3 || CY_PSOC5LP) + + CY_PM_PWRSYS_WAKE_TR0_REG = cyPmBackup.wakeupTrim0; + CY_PM_PWRSYS_WAKE_TR1_REG = cyPmBackup.wakeupTrim1; + + #endif /* (CY_PSOC3 || CY_PSOC5LP) */ } @@ -1720,15 +1763,10 @@ void CyPmFtwSetInterval(uint8 ftwInterval) * * Save timewheels configuration * * Disable FTW and 1PPS (enable and interrupt) * * Reset CTW -* * Save and disable PICU interrupts (PSoC 5) -* * Save and disable PRES-A and PRES-D (PSoC 5) +* * Save and disable PICU interrupts +* * Save and disable PRES-A and PRES-D * - Save and disable LVI/HVI configuration (PSoC 5) * - Save and set to max buzz interval (PSoC 5) -* - If LVI/HVI is enabled than hardware buzz in required (PSoC 3): -* * Prepare wake trim registers -* * Disable LDO-A in proper way -* - If LVI/HVI is disabled than hardware buzz in not required (PSoC 3): -* * Disabled hardware buzz * - CyPmHibSlpSaveSet() function is called * * Parameters: @@ -1796,53 +1834,6 @@ static void CyPmSlpSaveSet(void) #endif /* (CY_PSOC5A) */ - #if(CY_PSOC3) - - /*************************************************************************** - * If LVI/HVI is enabled than hardware buzz in required: - * - Prepare wake trim registers - * - Disable LDO-A in proper way - * - * If LVI/HVI is disabled than hardware buzz in not required: - * - Disabled hardware buzz - ***************************************************************************/ - - cyPmBackup.wakeTr2 = CY_PM_PWRSYS_WAKE_TR2_REG; - - /* Reconfigure power mode wakeup trim registers */ - if(0u != (CY_PM_RESET_CR1_REG & (CY_PM_RESET_CR1_HVIA_EN | - CY_PM_RESET_CR1_LVIA_EN | CY_PM_RESET_CR1_LVID_EN))) - { - /* HVI/LVI is enabled - hardware buzz is required */ - if(CYDEV_CHIP_REV_ACTUAL < 5u) - { - /* Update entire register */ - CY_PM_PWRSYS_WAKE_TR2_REG = 0x3Bu; - - /* Prepares for disabling LDO-A by moving bandgap reference to VCCD */ - CY_PM_PWRSYS_CR1_REG = 0x01u; - - /* Disables LDO-A */ - CY_PM_PWRSYS_CR1_REG |= 0x02u; - } - else - { - /* For later revisions, just enable buzz */ - CY_PM_PWRSYS_WAKE_TR2_REG |= CY_PM_PWRSYS_WAKE_TR2_EN_BUZZ; - } - } - else - { - /* HVI/LVI is disabled - hardware buzz is not required */ - if(CYDEV_CHIP_REV_ACTUAL < 5u) - { - /* Update entire register */ - CY_PM_PWRSYS_WAKE_TR2_REG = 0x3Au; - } - } - - #endif /* (CY_PSOC3) */ - /* Apply configuration that are same for Sleep and Hibernate */ CyPmHibSlpSaveSet(); } @@ -1857,7 +1848,6 @@ static void CyPmSlpSaveSet(void) * - Restore timewheel configuration (PSoC 5) * - Restore PRES-A and PRES-D (PSoC 5) * - Restore PICU interrupts (PSoC 5) -* - Restore LVI/HVI configuration (PSoC 3) * - Restore buzz sleep trim value (PSoC 5) * - Call to CyPmHibSlpSaveRestore() * @@ -1897,28 +1887,6 @@ static void CyPmSlpRestore(void) #endif /* (CY_PSOC5A) */ - #if(CY_PSOC3) - - CY_PM_PWRSYS_WAKE_TR2_REG = cyPmBackup.wakeTr2; - - /* HVI/LVI is enabled - hardware buzz is required */ - if(CYDEV_CHIP_REV_ACTUAL < 5u) - { - /* Reconfigure power mode wakeup trim registers */ - if(0u != (CY_PM_RESET_CR1_REG & (CY_PM_RESET_CR1_HVIA_EN | - CY_PM_RESET_CR1_LVIA_EN | CY_PM_RESET_CR1_LVID_EN))) - { - /* Enables LDO-A */ - CY_PM_PWRSYS_CR1_REG &= ((uint8)(~0x02u)); - - /* Moves bandgap reference back to VCCA */ - CY_PM_PWRSYS_CR1_REG &= ((uint8)(~0x01u)); - } - } - - #endif /* (CY_PSOC3) */ - - /* Restore configuration that are same for Sleep and Hibernate */ CyPmHibSlpRestore(); } diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyPm.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyPm.h index 2fe6960..6ed1b86 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyPm.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyPm.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: cyPm.h -* Version 3.30 +* Version 3.40 * * Description: * Provides the function definitions for the power management API. @@ -10,7 +10,7 @@ * System Reference Guide provided with PSoC Creator. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. @@ -294,8 +294,6 @@ typedef struct cyPmBackupStruct #if(CY_PSOC5A) uint8 buzzSleepTrim; - #else - uint8 wakeTr2; #endif /* (CY_PSOC5A) */ @@ -315,6 +313,14 @@ typedef struct cyPmBackupStruct #endif /* (CY_PSOC3 || CY_PSOC5LP) */ + #if(CY_PSOC3 || CY_PSOC5LP) + + uint8 wakeupTrim0; + uint8 wakeupTrim1; + + #endif /* (CY_PSOC3 || CY_PSOC5LP) */ + + #if(CY_PSOC3 || CY_PSOC5A || CY_PSOC5LP) uint8 scctData[28u]; /* SC/CT routing registers */ @@ -737,6 +743,23 @@ typedef struct cyPmBackupStruct #define CY_PM_BOOST_CR2_EREFSEL_EXT (0x08u) + +#if(CY_PSOC3) + + #define CY_PM_PWRSYS_WAKE_TR0 (0xFFu) + #define CY_PM_PWRSYS_WAKE_TR1 (0x90u) + +#endif /* (CY_PSOC3) */ + + +#if(CY_PSOC5LP) + + #define CY_PM_PWRSYS_WAKE_TR0 (0xFFu) + #define CY_PM_PWRSYS_WAKE_TR1 (0xB0u) + +#endif /* (CY_PSOC5LP) */ + + /******************************************************************************* * Following code are OBSOLETE and must not be used starting from cy_boot 3.30 *******************************************************************************/ diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevice.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevice.h index f8f10d6..de859e6 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevice.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevice.h @@ -1,13 +1,13 @@ /******************************************************************************* * FILENAME: cydevice.h * OBSOLETE: Do not use this file. Use the _trm version instead. -* PSoC Creator 2.2 Component Pack 5 +* PSoC Creator 2.2 Component Pack 6 * * DESCRIPTION: * This file provides all of the address values for the entire PSoC device. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevice_trm.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevice_trm.h index e19ba93..6533208 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevice_trm.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevice_trm.h @@ -1,13 +1,13 @@ /******************************************************************************* * FILENAME: cydevice_trm.h * -* PSoC Creator 2.2 Component Pack 5 +* PSoC Creator 2.2 Component Pack 6 * * DESCRIPTION: * This file provides all of the address values for the entire PSoC device. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevicegnu.inc b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevicegnu.inc index 284b5cd..e36a2e1 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevicegnu.inc +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevicegnu.inc @@ -1,13 +1,13 @@ /******************************************************************************* * FILENAME: cydevicegnu.inc * OBSOLETE: Do not use this file. Use the _trm version instead. -* PSoC Creator 2.2 Component Pack 5 +* PSoC Creator 2.2 Component Pack 6 * * DESCRIPTION: * This file provides all of the address values for the entire PSoC device. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevicegnu_trm.inc b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevicegnu_trm.inc index 2ebd420..d31a488 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevicegnu_trm.inc +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevicegnu_trm.inc @@ -1,13 +1,13 @@ /******************************************************************************* * FILENAME: cydevicegnu_trm.inc * -* PSoC Creator 2.2 Component Pack 5 +* PSoC Creator 2.2 Component Pack 6 * * DESCRIPTION: * This file provides all of the address values for the entire PSoC device. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevicerv.inc b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevicerv.inc index 14ab3ab..c151e4e 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevicerv.inc +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevicerv.inc @@ -1,13 +1,13 @@ ; ; FILENAME: cydevicerv.inc ; OBSOLETE: Do not use this file. Use the _trm version instead. -; PSoC Creator 2.2 Component Pack 5 +; PSoC Creator 2.2 Component Pack 6 ; ; DESCRIPTION: ; This file provides all of the address values for the entire PSoC device. ; ;------------------------------------------------------------------------------- -; Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +; Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. ; You may use this file only in accordance with the license, terms, conditions, ; disclaimers, and limitations in the end user license agreement accompanying ; the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevicerv_trm.inc b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevicerv_trm.inc index 25cf87f..797aeb8 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevicerv_trm.inc +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cydevicerv_trm.inc @@ -1,13 +1,13 @@ ; ; FILENAME: cydevicerv_trm.inc ; -; PSoC Creator 2.2 Component Pack 5 +; PSoC Creator 2.2 Component Pack 6 ; ; DESCRIPTION: ; This file provides all of the address values for the entire PSoC device. ; ;------------------------------------------------------------------------------- -; Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +; Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. ; You may use this file only in accordance with the license, terms, conditions, ; disclaimers, and limitations in the end user license agreement accompanying ; the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyfitter.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyfitter.h index 1892547..1047567 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyfitter.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyfitter.h @@ -3,6 +3,80 @@ #include #include +/* Timer_1_TimerUDB */ +#define Timer_1_TimerUDB_nrstSts_stsreg__0__MASK 0x01u +#define Timer_1_TimerUDB_nrstSts_stsreg__0__POS 0 +#define Timer_1_TimerUDB_nrstSts_stsreg__16BIT_STATUS_AUX_CTL_REG CYREG_B1_UDB04_05_ACTL +#define Timer_1_TimerUDB_nrstSts_stsreg__16BIT_STATUS_REG CYREG_B1_UDB04_05_ST +#define Timer_1_TimerUDB_nrstSts_stsreg__2__MASK 0x04u +#define Timer_1_TimerUDB_nrstSts_stsreg__2__POS 2 +#define Timer_1_TimerUDB_nrstSts_stsreg__3__MASK 0x08u +#define Timer_1_TimerUDB_nrstSts_stsreg__3__POS 3 +#define Timer_1_TimerUDB_nrstSts_stsreg__MASK 0x0Du +#define Timer_1_TimerUDB_nrstSts_stsreg__MASK_REG CYREG_B1_UDB04_MSK +#define Timer_1_TimerUDB_nrstSts_stsreg__MASK_ST_AUX_CTL_REG CYREG_B1_UDB04_MSK_ACTL +#define Timer_1_TimerUDB_nrstSts_stsreg__PER_ST_AUX_CTL_REG CYREG_B1_UDB04_MSK_ACTL +#define Timer_1_TimerUDB_nrstSts_stsreg__STATUS_AUX_CTL_REG CYREG_B1_UDB04_ACTL +#define Timer_1_TimerUDB_nrstSts_stsreg__STATUS_CNT_REG CYREG_B1_UDB04_ST_CTL +#define Timer_1_TimerUDB_nrstSts_stsreg__STATUS_CONTROL_REG CYREG_B1_UDB04_ST_CTL +#define Timer_1_TimerUDB_nrstSts_stsreg__STATUS_REG CYREG_B1_UDB04_ST +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_CONTROL_AUX_CTL_REG CYREG_B1_UDB04_05_ACTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_CONTROL_CONTROL_REG CYREG_B1_UDB04_05_CTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_CONTROL_COUNT_REG CYREG_B1_UDB04_05_CTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_COUNT_CONTROL_REG CYREG_B1_UDB04_05_CTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_COUNT_COUNT_REG CYREG_B1_UDB04_05_CTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_MASK_MASK_REG CYREG_B1_UDB04_05_MSK +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_MASK_PERIOD_REG CYREG_B1_UDB04_05_MSK +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_PERIOD_MASK_REG CYREG_B1_UDB04_05_MSK +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_PERIOD_PERIOD_REG CYREG_B1_UDB04_05_MSK +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__7__MASK 0x80u +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__7__POS 7 +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__CONTROL_AUX_CTL_REG CYREG_B1_UDB04_ACTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__CONTROL_REG CYREG_B1_UDB04_CTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__CONTROL_ST_REG CYREG_B1_UDB04_ST_CTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__COUNT_REG CYREG_B1_UDB04_CTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__COUNT_ST_REG CYREG_B1_UDB04_ST_CTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__MASK 0x80u +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__MASK_CTL_AUX_CTL_REG CYREG_B1_UDB04_MSK_ACTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__PERIOD_REG CYREG_B1_UDB04_MSK +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__PER_CTL_AUX_CTL_REG CYREG_B1_UDB04_MSK_ACTL +#define Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_A0_REG CYREG_B1_UDB04_05_A0 +#define Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_A1_REG CYREG_B1_UDB04_05_A1 +#define Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_D0_REG CYREG_B1_UDB04_05_D0 +#define Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_D1_REG CYREG_B1_UDB04_05_D1 +#define Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_DP_AUX_CTL_REG CYREG_B1_UDB04_05_ACTL +#define Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_F0_REG CYREG_B1_UDB04_05_F0 +#define Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_F1_REG CYREG_B1_UDB04_05_F1 +#define Timer_1_TimerUDB_sT16_timerdp_u0__A0_A1_REG CYREG_B1_UDB04_A0_A1 +#define Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG CYREG_B1_UDB04_A0 +#define Timer_1_TimerUDB_sT16_timerdp_u0__A1_REG CYREG_B1_UDB04_A1 +#define Timer_1_TimerUDB_sT16_timerdp_u0__D0_D1_REG CYREG_B1_UDB04_D0_D1 +#define Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG CYREG_B1_UDB04_D0 +#define Timer_1_TimerUDB_sT16_timerdp_u0__D1_REG CYREG_B1_UDB04_D1 +#define Timer_1_TimerUDB_sT16_timerdp_u0__DP_AUX_CTL_REG CYREG_B1_UDB04_ACTL +#define Timer_1_TimerUDB_sT16_timerdp_u0__F0_F1_REG CYREG_B1_UDB04_F0_F1 +#define Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG CYREG_B1_UDB04_F0 +#define Timer_1_TimerUDB_sT16_timerdp_u0__F1_REG CYREG_B1_UDB04_F1 +#define Timer_1_TimerUDB_sT16_timerdp_u0__MSK_DP_AUX_CTL_REG CYREG_B1_UDB04_MSK_ACTL +#define Timer_1_TimerUDB_sT16_timerdp_u0__PER_DP_AUX_CTL_REG CYREG_B1_UDB04_MSK_ACTL +#define Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_A0_REG CYREG_B1_UDB05_06_A0 +#define Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_A1_REG CYREG_B1_UDB05_06_A1 +#define Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_D0_REG CYREG_B1_UDB05_06_D0 +#define Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_D1_REG CYREG_B1_UDB05_06_D1 +#define Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_DP_AUX_CTL_REG CYREG_B1_UDB05_06_ACTL +#define Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_F0_REG CYREG_B1_UDB05_06_F0 +#define Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_F1_REG CYREG_B1_UDB05_06_F1 +#define Timer_1_TimerUDB_sT16_timerdp_u1__A0_A1_REG CYREG_B1_UDB05_A0_A1 +#define Timer_1_TimerUDB_sT16_timerdp_u1__A0_REG CYREG_B1_UDB05_A0 +#define Timer_1_TimerUDB_sT16_timerdp_u1__A1_REG CYREG_B1_UDB05_A1 +#define Timer_1_TimerUDB_sT16_timerdp_u1__D0_D1_REG CYREG_B1_UDB05_D0_D1 +#define Timer_1_TimerUDB_sT16_timerdp_u1__D0_REG CYREG_B1_UDB05_D0 +#define Timer_1_TimerUDB_sT16_timerdp_u1__D1_REG CYREG_B1_UDB05_D1 +#define Timer_1_TimerUDB_sT16_timerdp_u1__DP_AUX_CTL_REG CYREG_B1_UDB05_ACTL +#define Timer_1_TimerUDB_sT16_timerdp_u1__F0_F1_REG CYREG_B1_UDB05_F0_F1 +#define Timer_1_TimerUDB_sT16_timerdp_u1__F0_REG CYREG_B1_UDB05_F0 +#define Timer_1_TimerUDB_sT16_timerdp_u1__F1_REG CYREG_B1_UDB05_F1 + /* SPIM_IntClock */ #define SPIM_IntClock__CFG0 CYREG_CLKDIST_DCFG0_CFG0 #define SPIM_IntClock__CFG1 CYREG_CLKDIST_DCFG0_CFG1 @@ -15,27 +89,27 @@ #define SPIM_IntClock__PM_STBY_MSK 0x01u /* UART_1_BUART */ -#define UART_1_BUART_sTX_TxShifter_u0__16BIT_A0_REG CYREG_B0_UDB01_02_A0 -#define UART_1_BUART_sTX_TxShifter_u0__16BIT_A1_REG CYREG_B0_UDB01_02_A1 -#define UART_1_BUART_sTX_TxShifter_u0__16BIT_D0_REG CYREG_B0_UDB01_02_D0 -#define UART_1_BUART_sTX_TxShifter_u0__16BIT_D1_REG CYREG_B0_UDB01_02_D1 -#define UART_1_BUART_sTX_TxShifter_u0__16BIT_DP_AUX_CTL_REG CYREG_B0_UDB01_02_ACTL -#define UART_1_BUART_sTX_TxShifter_u0__16BIT_F0_REG CYREG_B0_UDB01_02_F0 -#define UART_1_BUART_sTX_TxShifter_u0__16BIT_F1_REG CYREG_B0_UDB01_02_F1 -#define UART_1_BUART_sTX_TxShifter_u0__A0_A1_REG CYREG_B0_UDB01_A0_A1 -#define UART_1_BUART_sTX_TxShifter_u0__A0_REG CYREG_B0_UDB01_A0 -#define UART_1_BUART_sTX_TxShifter_u0__A1_REG CYREG_B0_UDB01_A1 -#define UART_1_BUART_sTX_TxShifter_u0__D0_D1_REG CYREG_B0_UDB01_D0_D1 -#define UART_1_BUART_sTX_TxShifter_u0__D0_REG CYREG_B0_UDB01_D0 -#define UART_1_BUART_sTX_TxShifter_u0__D1_REG CYREG_B0_UDB01_D1 -#define UART_1_BUART_sTX_TxShifter_u0__DP_AUX_CTL_REG CYREG_B0_UDB01_ACTL -#define UART_1_BUART_sTX_TxShifter_u0__F0_F1_REG CYREG_B0_UDB01_F0_F1 -#define UART_1_BUART_sTX_TxShifter_u0__F0_REG CYREG_B0_UDB01_F0 -#define UART_1_BUART_sTX_TxShifter_u0__F1_REG CYREG_B0_UDB01_F1 +#define UART_1_BUART_sTX_TxShifter_u0__16BIT_A0_REG CYREG_B0_UDB04_05_A0 +#define UART_1_BUART_sTX_TxShifter_u0__16BIT_A1_REG CYREG_B0_UDB04_05_A1 +#define UART_1_BUART_sTX_TxShifter_u0__16BIT_D0_REG CYREG_B0_UDB04_05_D0 +#define UART_1_BUART_sTX_TxShifter_u0__16BIT_D1_REG CYREG_B0_UDB04_05_D1 +#define UART_1_BUART_sTX_TxShifter_u0__16BIT_DP_AUX_CTL_REG CYREG_B0_UDB04_05_ACTL +#define UART_1_BUART_sTX_TxShifter_u0__16BIT_F0_REG CYREG_B0_UDB04_05_F0 +#define UART_1_BUART_sTX_TxShifter_u0__16BIT_F1_REG CYREG_B0_UDB04_05_F1 +#define UART_1_BUART_sTX_TxShifter_u0__A0_A1_REG CYREG_B0_UDB04_A0_A1 +#define UART_1_BUART_sTX_TxShifter_u0__A0_REG CYREG_B0_UDB04_A0 +#define UART_1_BUART_sTX_TxShifter_u0__A1_REG CYREG_B0_UDB04_A1 +#define UART_1_BUART_sTX_TxShifter_u0__D0_D1_REG CYREG_B0_UDB04_D0_D1 +#define UART_1_BUART_sTX_TxShifter_u0__D0_REG CYREG_B0_UDB04_D0 +#define UART_1_BUART_sTX_TxShifter_u0__D1_REG CYREG_B0_UDB04_D1 +#define UART_1_BUART_sTX_TxShifter_u0__DP_AUX_CTL_REG CYREG_B0_UDB04_ACTL +#define UART_1_BUART_sTX_TxShifter_u0__F0_F1_REG CYREG_B0_UDB04_F0_F1 +#define UART_1_BUART_sTX_TxShifter_u0__F0_REG CYREG_B0_UDB04_F0 +#define UART_1_BUART_sTX_TxShifter_u0__F1_REG CYREG_B0_UDB04_F1 #define UART_1_BUART_sTX_TxSts__0__MASK 0x01u #define UART_1_BUART_sTX_TxSts__0__POS 0 -#define UART_1_BUART_sTX_TxSts__16BIT_STATUS_AUX_CTL_REG CYREG_B0_UDB02_03_ACTL -#define UART_1_BUART_sTX_TxSts__16BIT_STATUS_REG CYREG_B0_UDB02_03_ST +#define UART_1_BUART_sTX_TxSts__16BIT_STATUS_AUX_CTL_REG CYREG_B0_UDB04_05_ACTL +#define UART_1_BUART_sTX_TxSts__16BIT_STATUS_REG CYREG_B0_UDB04_05_ST #define UART_1_BUART_sTX_TxSts__1__MASK 0x02u #define UART_1_BUART_sTX_TxSts__1__POS 1 #define UART_1_BUART_sTX_TxSts__2__MASK 0x04u @@ -43,26 +117,26 @@ #define UART_1_BUART_sTX_TxSts__3__MASK 0x08u #define UART_1_BUART_sTX_TxSts__3__POS 3 #define UART_1_BUART_sTX_TxSts__MASK 0x0Fu -#define UART_1_BUART_sTX_TxSts__MASK_REG CYREG_B0_UDB02_MSK -#define UART_1_BUART_sTX_TxSts__STATUS_AUX_CTL_REG CYREG_B0_UDB02_ACTL -#define UART_1_BUART_sTX_TxSts__STATUS_REG CYREG_B0_UDB02_ST -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A0_REG CYREG_B0_UDB00_01_A0 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A1_REG CYREG_B0_UDB00_01_A1 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D0_REG CYREG_B0_UDB00_01_D0 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D1_REG CYREG_B0_UDB00_01_D1 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_DP_AUX_CTL_REG CYREG_B0_UDB00_01_ACTL -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F0_REG CYREG_B0_UDB00_01_F0 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F1_REG CYREG_B0_UDB00_01_F1 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_A1_REG CYREG_B0_UDB00_A0_A1 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_REG CYREG_B0_UDB00_A0 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A1_REG CYREG_B0_UDB00_A1 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_D1_REG CYREG_B0_UDB00_D0_D1 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_REG CYREG_B0_UDB00_D0 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D1_REG CYREG_B0_UDB00_D1 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__DP_AUX_CTL_REG CYREG_B0_UDB00_ACTL -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_F1_REG CYREG_B0_UDB00_F0_F1 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_REG CYREG_B0_UDB00_F0 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F1_REG CYREG_B0_UDB00_F1 +#define UART_1_BUART_sTX_TxSts__MASK_REG CYREG_B0_UDB04_MSK +#define UART_1_BUART_sTX_TxSts__STATUS_AUX_CTL_REG CYREG_B0_UDB04_ACTL +#define UART_1_BUART_sTX_TxSts__STATUS_REG CYREG_B0_UDB04_ST +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A0_REG CYREG_B0_UDB05_06_A0 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A1_REG CYREG_B0_UDB05_06_A1 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D0_REG CYREG_B0_UDB05_06_D0 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D1_REG CYREG_B0_UDB05_06_D1 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_DP_AUX_CTL_REG CYREG_B0_UDB05_06_ACTL +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F0_REG CYREG_B0_UDB05_06_F0 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F1_REG CYREG_B0_UDB05_06_F1 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_A1_REG CYREG_B0_UDB05_A0_A1 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_REG CYREG_B0_UDB05_A0 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A1_REG CYREG_B0_UDB05_A1 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_D1_REG CYREG_B0_UDB05_D0_D1 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_REG CYREG_B0_UDB05_D0 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D1_REG CYREG_B0_UDB05_D1 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__DP_AUX_CTL_REG CYREG_B0_UDB05_ACTL +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_F1_REG CYREG_B0_UDB05_F0_F1 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_REG CYREG_B0_UDB05_F0 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F1_REG CYREG_B0_UDB05_F1 /* LCD_LCDPort */ #define LCD_LCDPort__0__MASK 0x01u @@ -243,8 +317,8 @@ #define SPIM_BSPIM_BitCounter__MASK_CTL_AUX_CTL_REG CYREG_B0_UDB03_MSK_ACTL #define SPIM_BSPIM_BitCounter__PERIOD_REG CYREG_B0_UDB03_MSK #define SPIM_BSPIM_BitCounter__PER_CTL_AUX_CTL_REG CYREG_B0_UDB03_MSK_ACTL -#define SPIM_BSPIM_RxStsReg__16BIT_STATUS_AUX_CTL_REG CYREG_B0_UDB00_01_ACTL -#define SPIM_BSPIM_RxStsReg__16BIT_STATUS_REG CYREG_B0_UDB00_01_ST +#define SPIM_BSPIM_RxStsReg__16BIT_STATUS_AUX_CTL_REG CYREG_B0_UDB02_03_ACTL +#define SPIM_BSPIM_RxStsReg__16BIT_STATUS_REG CYREG_B0_UDB02_03_ST #define SPIM_BSPIM_RxStsReg__4__MASK 0x10u #define SPIM_BSPIM_RxStsReg__4__POS 4 #define SPIM_BSPIM_RxStsReg__5__MASK 0x20u @@ -252,13 +326,13 @@ #define SPIM_BSPIM_RxStsReg__6__MASK 0x40u #define SPIM_BSPIM_RxStsReg__6__POS 6 #define SPIM_BSPIM_RxStsReg__MASK 0x70u -#define SPIM_BSPIM_RxStsReg__MASK_REG CYREG_B0_UDB00_MSK -#define SPIM_BSPIM_RxStsReg__STATUS_AUX_CTL_REG CYREG_B0_UDB00_ACTL -#define SPIM_BSPIM_RxStsReg__STATUS_REG CYREG_B0_UDB00_ST +#define SPIM_BSPIM_RxStsReg__MASK_REG CYREG_B0_UDB02_MSK +#define SPIM_BSPIM_RxStsReg__STATUS_AUX_CTL_REG CYREG_B0_UDB02_ACTL +#define SPIM_BSPIM_RxStsReg__STATUS_REG CYREG_B0_UDB02_ST #define SPIM_BSPIM_TxStsReg__0__MASK 0x01u #define SPIM_BSPIM_TxStsReg__0__POS 0 -#define SPIM_BSPIM_TxStsReg__16BIT_STATUS_AUX_CTL_REG CYREG_B0_UDB04_05_ACTL -#define SPIM_BSPIM_TxStsReg__16BIT_STATUS_REG CYREG_B0_UDB04_05_ST +#define SPIM_BSPIM_TxStsReg__16BIT_STATUS_AUX_CTL_REG CYREG_B0_UDB00_01_ACTL +#define SPIM_BSPIM_TxStsReg__16BIT_STATUS_REG CYREG_B0_UDB00_01_ST #define SPIM_BSPIM_TxStsReg__1__MASK 0x02u #define SPIM_BSPIM_TxStsReg__1__POS 1 #define SPIM_BSPIM_TxStsReg__2__MASK 0x04u @@ -268,9 +342,9 @@ #define SPIM_BSPIM_TxStsReg__4__MASK 0x10u #define SPIM_BSPIM_TxStsReg__4__POS 4 #define SPIM_BSPIM_TxStsReg__MASK 0x1Fu -#define SPIM_BSPIM_TxStsReg__MASK_REG CYREG_B0_UDB04_MSK -#define SPIM_BSPIM_TxStsReg__STATUS_AUX_CTL_REG CYREG_B0_UDB04_ACTL -#define SPIM_BSPIM_TxStsReg__STATUS_REG CYREG_B0_UDB04_ST +#define SPIM_BSPIM_TxStsReg__MASK_REG CYREG_B0_UDB00_MSK +#define SPIM_BSPIM_TxStsReg__STATUS_AUX_CTL_REG CYREG_B0_UDB00_ACTL +#define SPIM_BSPIM_TxStsReg__STATUS_REG CYREG_B0_UDB00_ST #define SPIM_BSPIM_sR8_Dp_u0__16BIT_A0_REG CYREG_B0_UDB03_04_A0 #define SPIM_BSPIM_sR8_Dp_u0__16BIT_A1_REG CYREG_B0_UDB03_04_A1 #define SPIM_BSPIM_sR8_Dp_u0__16BIT_D0_REG CYREG_B0_UDB03_04_D0 @@ -430,6 +504,38 @@ #define Pin_4__SHIFT 3 #define Pin_4__SLW CYREG_PRT3_SLW +/* Pin_5 */ +#define Pin_5__0__MASK 0x10u +#define Pin_5__0__PC CYREG_PRT3_PC4 +#define Pin_5__0__PORT 3u +#define Pin_5__0__SHIFT 4 +#define Pin_5__AG CYREG_PRT3_AG +#define Pin_5__AMUX CYREG_PRT3_AMUX +#define Pin_5__BIE CYREG_PRT3_BIE +#define Pin_5__BIT_MASK CYREG_PRT3_BIT_MASK +#define Pin_5__BYP CYREG_PRT3_BYP +#define Pin_5__CTL CYREG_PRT3_CTL +#define Pin_5__DM0 CYREG_PRT3_DM0 +#define Pin_5__DM1 CYREG_PRT3_DM1 +#define Pin_5__DM2 CYREG_PRT3_DM2 +#define Pin_5__DR CYREG_PRT3_DR +#define Pin_5__INP_DIS CYREG_PRT3_INP_DIS +#define Pin_5__LCD_COM_SEG CYREG_PRT3_LCD_COM_SEG +#define Pin_5__LCD_EN CYREG_PRT3_LCD_EN +#define Pin_5__MASK 0x10u +#define Pin_5__PORT 3u +#define Pin_5__PRT CYREG_PRT3_PRT +#define Pin_5__PRTDSI__CAPS_SEL CYREG_PRT3_CAPS_SEL +#define Pin_5__PRTDSI__DBL_SYNC_IN CYREG_PRT3_DBL_SYNC_IN +#define Pin_5__PRTDSI__OE_SEL0 CYREG_PRT3_OE_SEL0 +#define Pin_5__PRTDSI__OE_SEL1 CYREG_PRT3_OE_SEL1 +#define Pin_5__PRTDSI__OUT_SEL0 CYREG_PRT3_OUT_SEL0 +#define Pin_5__PRTDSI__OUT_SEL1 CYREG_PRT3_OUT_SEL1 +#define Pin_5__PRTDSI__SYNC_OUT CYREG_PRT3_SYNC_OUT +#define Pin_5__PS CYREG_PRT3_PS +#define Pin_5__SHIFT 4 +#define Pin_5__SLW CYREG_PRT3_SLW + /* Tx_1 */ #define Tx_1__0__MASK 0x80u #define Tx_1__0__PC CYREG_PRT3_PC7 @@ -465,26 +571,28 @@ /* SS */ #define SS_Async_ctrl_reg__0__MASK 0x01u #define SS_Async_ctrl_reg__0__POS 0 -#define SS_Async_ctrl_reg__16BIT_CONTROL_AUX_CTL_REG CYREG_B0_UDB05_06_ACTL -#define SS_Async_ctrl_reg__16BIT_CONTROL_CONTROL_REG CYREG_B0_UDB05_06_CTL -#define SS_Async_ctrl_reg__16BIT_CONTROL_COUNT_REG CYREG_B0_UDB05_06_CTL -#define SS_Async_ctrl_reg__16BIT_COUNT_CONTROL_REG CYREG_B0_UDB05_06_CTL -#define SS_Async_ctrl_reg__16BIT_COUNT_COUNT_REG CYREG_B0_UDB05_06_CTL -#define SS_Async_ctrl_reg__16BIT_MASK_MASK_REG CYREG_B0_UDB05_06_MSK -#define SS_Async_ctrl_reg__16BIT_MASK_PERIOD_REG CYREG_B0_UDB05_06_MSK -#define SS_Async_ctrl_reg__16BIT_PERIOD_MASK_REG CYREG_B0_UDB05_06_MSK -#define SS_Async_ctrl_reg__16BIT_PERIOD_PERIOD_REG CYREG_B0_UDB05_06_MSK +#define SS_Async_ctrl_reg__16BIT_CONTROL_AUX_CTL_REG CYREG_B0_UDB01_02_ACTL +#define SS_Async_ctrl_reg__16BIT_CONTROL_CONTROL_REG CYREG_B0_UDB01_02_CTL +#define SS_Async_ctrl_reg__16BIT_CONTROL_COUNT_REG CYREG_B0_UDB01_02_CTL +#define SS_Async_ctrl_reg__16BIT_COUNT_CONTROL_REG CYREG_B0_UDB01_02_CTL +#define SS_Async_ctrl_reg__16BIT_COUNT_COUNT_REG CYREG_B0_UDB01_02_CTL +#define SS_Async_ctrl_reg__16BIT_MASK_MASK_REG CYREG_B0_UDB01_02_MSK +#define SS_Async_ctrl_reg__16BIT_MASK_PERIOD_REG CYREG_B0_UDB01_02_MSK +#define SS_Async_ctrl_reg__16BIT_PERIOD_MASK_REG CYREG_B0_UDB01_02_MSK +#define SS_Async_ctrl_reg__16BIT_PERIOD_PERIOD_REG CYREG_B0_UDB01_02_MSK #define SS_Async_ctrl_reg__1__MASK 0x02u #define SS_Async_ctrl_reg__1__POS 1 -#define SS_Async_ctrl_reg__CONTROL_AUX_CTL_REG CYREG_B0_UDB05_ACTL -#define SS_Async_ctrl_reg__CONTROL_REG CYREG_B0_UDB05_CTL -#define SS_Async_ctrl_reg__CONTROL_ST_REG CYREG_B0_UDB05_ST_CTL -#define SS_Async_ctrl_reg__COUNT_REG CYREG_B0_UDB05_CTL -#define SS_Async_ctrl_reg__COUNT_ST_REG CYREG_B0_UDB05_ST_CTL -#define SS_Async_ctrl_reg__MASK 0x03u -#define SS_Async_ctrl_reg__MASK_CTL_AUX_CTL_REG CYREG_B0_UDB05_MSK_ACTL -#define SS_Async_ctrl_reg__PERIOD_REG CYREG_B0_UDB05_MSK -#define SS_Async_ctrl_reg__PER_CTL_AUX_CTL_REG CYREG_B0_UDB05_MSK_ACTL +#define SS_Async_ctrl_reg__2__MASK 0x04u +#define SS_Async_ctrl_reg__2__POS 2 +#define SS_Async_ctrl_reg__CONTROL_AUX_CTL_REG CYREG_B0_UDB01_ACTL +#define SS_Async_ctrl_reg__CONTROL_REG CYREG_B0_UDB01_CTL +#define SS_Async_ctrl_reg__CONTROL_ST_REG CYREG_B0_UDB01_ST_CTL +#define SS_Async_ctrl_reg__COUNT_REG CYREG_B0_UDB01_CTL +#define SS_Async_ctrl_reg__COUNT_ST_REG CYREG_B0_UDB01_ST_CTL +#define SS_Async_ctrl_reg__MASK 0x07u +#define SS_Async_ctrl_reg__MASK_CTL_AUX_CTL_REG CYREG_B0_UDB01_MSK_ACTL +#define SS_Async_ctrl_reg__PERIOD_REG CYREG_B0_UDB01_MSK +#define SS_Async_ctrl_reg__PER_CTL_AUX_CTL_REG CYREG_B0_UDB01_MSK_ACTL /* Miscellaneous */ /* -- WARNING: define names containing LEOPARD or PANTHER are deprecated and will be removed in a future release */ @@ -494,16 +602,17 @@ #define CYDEV_CONFIG_FASTBOOT_ENABLED 0 #define CYDEV_CHIP_REV_PANTHER_PRODUCTION 1u #define CYDEV_CHIP_REVISION_5A_PRODUCTION 1u -#define CYDEV_CHIP_MEMBER_5A 2u +#define CYDEV_CHIP_MEMBER_5A 3u #define CYDEV_CHIP_FAMILY_PSOC5 3u -#define CYDEV_CHIP_DIE_PANTHER 2u +#define CYDEV_CHIP_DIE_PANTHER 3u #define CYDEV_CHIP_DIE_EXPECT CYDEV_CHIP_DIE_PANTHER #define BCLK__BUS_CLK__HZ 24000000U #define BCLK__BUS_CLK__KHZ 24000U #define BCLK__BUS_CLK__MHZ 24U #define CYDEV_CHIP_DIE_ACTUAL CYDEV_CHIP_DIE_EXPECT #define CYDEV_CHIP_DIE_LEOPARD 1u -#define CYDEV_CHIP_DIE_PSOC5LP 3u +#define CYDEV_CHIP_DIE_PSOC4A 2u +#define CYDEV_CHIP_DIE_PSOC5LP 4u #define CYDEV_CHIP_DIE_UNKNOWN 0u #define CYDEV_CHIP_FAMILY_PSOC3 1u #define CYDEV_CHIP_FAMILY_PSOC4 2u @@ -511,13 +620,16 @@ #define CYDEV_CHIP_FAMILY_USED CYDEV_CHIP_FAMILY_PSOC5 #define CYDEV_CHIP_JTAG_ID 0x0E13C069u #define CYDEV_CHIP_MEMBER_3A 1u -#define CYDEV_CHIP_MEMBER_5B 3u +#define CYDEV_CHIP_MEMBER_4A 2u +#define CYDEV_CHIP_MEMBER_5B 4u #define CYDEV_CHIP_MEMBER_UNKNOWN 0u #define CYDEV_CHIP_MEMBER_USED CYDEV_CHIP_MEMBER_5A #define CYDEV_CHIP_REVISION_3A_ES1 0u #define CYDEV_CHIP_REVISION_3A_ES2 1u #define CYDEV_CHIP_REVISION_3A_ES3 3u #define CYDEV_CHIP_REVISION_3A_PRODUCTION 3u +#define CYDEV_CHIP_REVISION_4A_ES0 17u +#define CYDEV_CHIP_REVISION_4A_PRODUCTION 17u #define CYDEV_CHIP_REVISION_5A_ES0 0u #define CYDEV_CHIP_REVISION_5A_ES1 1u #define CYDEV_CHIP_REVISION_5B_ES0 0u @@ -530,6 +642,8 @@ #define CYDEV_CHIP_REV_LEOPARD_PRODUCTION 3u #define CYDEV_CHIP_REV_PANTHER_ES0 0u #define CYDEV_CHIP_REV_PANTHER_ES1 1u +#define CYDEV_CHIP_REV_PSOC4A_ES0 17u +#define CYDEV_CHIP_REV_PSOC4A_PRODUCTION 17u #define CYDEV_CHIP_REV_PSOC5LP_ES0 0u #define CYDEV_CHIP_REV_PSOC5LP_PRODUCTION 0u #define CYDEV_CONFIGURATION_COMPRESSED 0 diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyfitter_cfg.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyfitter_cfg.c index 2a4057a..b5c3dfb 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyfitter_cfg.c +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyfitter_cfg.c @@ -1,6 +1,6 @@ /******************************************************************************* * FILENAME: cyfitter_cfg.c -* PSoC Creator 2.2 Component Pack 5 +* PSoC Creator 2.2 Component Pack 6 * * Description: * This file is automatically generated by PSoC Creator with device @@ -8,7 +8,7 @@ * CyClockStartupError(), this file should not be modified. * ******************************************************************************** -* Copyright 2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. @@ -110,7 +110,7 @@ static void CyClockStartupError(uint8 errorCode) { volatile uint8 * const addr8 = (volatile uint8 *)addr; uint32 i; - for (i = 0; i < count; i++) + for (i = 0u; i < count; i++) { addr8[i] = 0u; } @@ -142,7 +142,7 @@ static void CyClockStartupError(uint8 errorCode) volatile uint8 * const dest8 = (volatile uint8 *)dest; const uint8 * const src8 = (const uint8 *)src; uint32 i; - for (i = 0; i < count; i++) + for (i = 0u; i < count; i++) { dest8[i] = src8[i]; } @@ -217,80 +217,107 @@ static void CyClockStartupError(uint8 errorCode) /* UDB_1_3_1_CONFIG Address: CYDEV_UCFG_B0_P2_U1_BASE Size (bytes): 128 */ #define BS_UDB_1_3_1_CONFIG_VAL ((const uint8 CYFAR *)0x48000280u) +/* UDB_1_0_0_CONFIG Address: CYDEV_UCFG_B1_P2_U0_BASE Size (bytes): 128 */ +#define BS_UDB_1_0_0_CONFIG_VAL ((const uint8 CYFAR *)0x48000300u) + +/* UDB_1_0_1_CONFIG Address: CYDEV_UCFG_B1_P2_U1_BASE Size (bytes): 128 */ +#define BS_UDB_1_0_1_CONFIG_VAL ((const uint8 CYFAR *)0x48000380u) + /* UWRK_B0_WRK_STATCTL_BITS Address: CYDEV_UWRK_UWRK8_B0_BASE + 0x00000070u Size (bytes): 32 */ -#define BS_UWRK_B0_WRK_STATCTL_BITS_VAL ((const uint8 CYFAR *)0x48000300u) +#define BS_UWRK_B0_WRK_STATCTL_BITS_VAL ((const uint8 CYFAR *)0x48000400u) -/* DSI0_2_HV_ROUTING Address: CYDEV_UCFG_DSI7_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_DSI0_2_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000320u) +/* UWRK_B1_WRK_STATCTL_BITS Address: CYDEV_UWRK_UWRK8_B1_BASE + 0x00000070u Size (bytes): 32 */ +#define BS_UWRK_B1_WRK_STATCTL_BITS_VAL ((const uint8 CYFAR *)0x48000420u) /* DSI0_3_HV_ROUTING Address: CYDEV_UCFG_DSI6_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_DSI0_3_HV_ROUTING_VAL ((const uint8 CYFAR *)0x480003A0u) +#define BS_DSI0_3_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000440u) /* DSI0_4_HV_ROUTING Address: CYDEV_UCFG_DSI5_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_DSI0_4_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000420u) +#define BS_DSI0_4_HV_ROUTING_VAL ((const uint8 CYFAR *)0x480004C0u) /* DSISWITCH_0_5 Address: CYDEV_UCFG_DSI4_BASE Size (bytes): 128 */ -#define BS_DSISWITCH_0_5_VAL ((const uint8 CYFAR *)0x480004A0u) +#define BS_DSISWITCH_0_5_VAL ((const uint8 CYFAR *)0x48000540u) /* DSI0_5_HV_ROUTING Address: CYDEV_UCFG_DSI4_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_DSI0_5_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000520u) +#define BS_DSI0_5_HV_ROUTING_VAL ((const uint8 CYFAR *)0x480005C0u) + +/* UDBSWITCH_1_0 Address: CYDEV_UCFG_B1_P2_ROUTE_BASE Size (bytes): 128 */ +#define BS_UDBSWITCH_1_0_VAL ((const uint8 CYFAR *)0x48000640u) -/* UDB_1_2_HV_ROUTING Address: CYDEV_UCFG_B0_P4_ROUTE_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_UDB_1_2_HV_ROUTING_VAL ((const uint8 CYFAR *)0x480005A0u) +/* UDB_2_0_HV_ROUTING Address: CYDEV_UCFG_B1_P2_ROUTE_BASE + 0x00000080u Size (bytes): 128 */ +#define BS_UDB_2_0_HV_ROUTING_VAL ((const uint8 CYFAR *)0x480006C0u) + +/* UDB_2_1_HV_ROUTING Address: CYDEV_UCFG_B1_P3_ROUTE_BASE + 0x00000080u Size (bytes): 128 */ +#define BS_UDB_2_1_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000740u) /* UDB_2_2_HV_ROUTING Address: CYDEV_UCFG_B0_P3_ROUTE_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_UDB_2_2_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000620u) +#define BS_UDB_2_2_HV_ROUTING_VAL ((const uint8 CYFAR *)0x480007C0u) /* UDB_1_3_HV_ROUTING Address: CYDEV_UCFG_B0_P5_ROUTE_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_UDB_1_3_HV_ROUTING_VAL ((const uint8 CYFAR *)0x480006A0u) +#define BS_UDB_1_3_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000840u) /* UDBSWITCH_1_3 Address: CYDEV_UCFG_B0_P2_ROUTE_BASE Size (bytes): 128 */ -#define BS_UDBSWITCH_1_3_VAL ((const uint8 CYFAR *)0x48000720u) +#define BS_UDBSWITCH_1_3_VAL ((const uint8 CYFAR *)0x480008C0u) /* UDB_2_3_HV_ROUTING Address: CYDEV_UCFG_B0_P2_ROUTE_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_UDB_2_3_HV_ROUTING_VAL ((const uint8 CYFAR *)0x480007A0u) +#define BS_UDB_2_3_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000940u) /* UDBSWITCH_1_4 Address: CYDEV_UCFG_B0_P1_ROUTE_BASE Size (bytes): 128 */ -#define BS_UDBSWITCH_1_4_VAL ((const uint8 CYFAR *)0x48000820u) +#define BS_UDBSWITCH_1_4_VAL ((const uint8 CYFAR *)0x480009C0u) /* UDB_2_4_HV_ROUTING Address: CYDEV_UCFG_B0_P1_ROUTE_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_UDB_2_4_HV_ROUTING_VAL ((const uint8 CYFAR *)0x480008A0u) +#define BS_UDB_2_4_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000A40u) + +/* UDB_1_5_HV_ROUTING Address: CYDEV_UCFG_B0_P7_ROUTE_BASE + 0x00000080u Size (bytes): 128 */ +#define BS_UDB_1_5_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000AC0u) /* UDBSWITCH_1_5 Address: CYDEV_UCFG_B0_P0_ROUTE_BASE Size (bytes): 128 */ -#define BS_UDBSWITCH_1_5_VAL ((const uint8 CYFAR *)0x48000920u) +#define BS_UDBSWITCH_1_5_VAL ((const uint8 CYFAR *)0x48000B40u) /* UDB_2_5_HV_ROUTING Address: CYDEV_UCFG_B0_P0_ROUTE_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_UDB_2_5_HV_ROUTING_VAL ((const uint8 CYFAR *)0x480009A0u) +#define BS_UDB_2_5_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000BC0u) + +/* DSI3_1_HV_ROUTING Address: CYDEV_UCFG_DSI8_BASE + 0x00000080u Size (bytes): 128 */ +#define BS_DSI3_1_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000C40u) + +/* DSISWITCH_1_2 Address: CYDEV_UCFG_DSI3_BASE Size (bytes): 128 */ +#define BS_DSISWITCH_1_2_VAL ((const uint8 CYFAR *)0x48000CC0u) + +/* DSI3_2_HV_ROUTING Address: CYDEV_UCFG_DSI3_BASE + 0x00000080u Size (bytes): 128 */ +#define BS_DSI3_2_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000D40u) /* DSI3_3_HV_ROUTING Address: CYDEV_UCFG_DSI2_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_DSI3_3_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000A20u) +#define BS_DSI3_3_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000DC0u) /* DSI3_4_HV_ROUTING Address: CYDEV_UCFG_DSI1_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_DSI3_4_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000AA0u) +#define BS_DSI3_4_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000E40u) /* DSISWITCH_1_5 Address: CYDEV_UCFG_DSI0_BASE Size (bytes): 128 */ -#define BS_DSISWITCH_1_5_VAL ((const uint8 CYFAR *)0x48000B20u) +#define BS_DSISWITCH_1_5_VAL ((const uint8 CYFAR *)0x48000EC0u) /* DSI3_5_HV_ROUTING Address: CYDEV_UCFG_DSI0_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_DSI3_5_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000BA0u) +#define BS_DSI3_5_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000F40u) + +/* UCFG_BCTL1 Address: CYREG_BCTL1_MDCLK_EN Size (bytes): 16 */ +#define BS_UCFG_BCTL1_VAL ((const uint8 CYFAR *)0x48000FC0u) /* UCFG_BCTL0 Address: CYREG_BCTL0_MDCLK_EN Size (bytes): 16 */ -#define BS_UCFG_BCTL0_VAL ((const uint8 CYFAR *)0x48000C20u) +#define BS_UCFG_BCTL0_VAL ((const uint8 CYFAR *)0x48000FD0u) /* IOPINS0_0 Address: CYREG_PRT0_DR Size (bytes): 10 */ -#define BS_IOPINS0_0_VAL ((const uint8 CYFAR *)0x48000C30u) +#define BS_IOPINS0_0_VAL ((const uint8 CYFAR *)0x48000FE0u) /* IOPINS0_2 Address: CYREG_PRT2_DM0 Size (bytes): 8 */ -#define BS_IOPINS0_2_VAL ((const uint8 CYFAR *)0x48000C3Cu) +#define BS_IOPINS0_2_VAL ((const uint8 CYFAR *)0x48000FECu) /* IOPINS0_3 Address: CYREG_PRT3_DR Size (bytes): 10 */ -#define BS_IOPINS0_3_VAL ((const uint8 CYFAR *)0x48000C44u) +#define BS_IOPINS0_3_VAL ((const uint8 CYFAR *)0x48000FF4u) /* IOPORT_0 Address: CYDEV_PRTDSI_PRT0_BASE Size (bytes): 7 */ -#define BS_IOPORT_0_VAL ((const uint8 CYFAR *)0x48000C50u) +#define BS_IOPORT_0_VAL ((const uint8 CYFAR *)0x48001000u) /* IOPORT_3 Address: CYDEV_PRTDSI_PRT3_BASE Size (bytes): 7 */ -#define BS_IOPORT_3_VAL ((const uint8 CYFAR *)0x48000C58u) +#define BS_IOPORT_3_VAL ((const uint8 CYFAR *)0x48001008u) /******************************************************************************* @@ -358,44 +385,52 @@ static void cfg_dma_init(void) { 16u, 0x0Cu, 0x22u, (uint16)(uint32)(0u), (uint16)(CYREG_PRT12_DR) }, /* TD 11 */ { 16u, 0xFFu, 0x22u, (uint16)(uint32)(0u), (uint16)(CYREG_PRT15_DR) }, /* TD 12 */ { 384u, 0x0Eu, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P3_U0_BASE) }, /* TD 13 */ - { 384u, 0x0Fu, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P4_U0_BASE) }, /* TD 14 */ - { 384u, 0x10u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P5_U0_BASE) }, /* TD 15 */ - { 1024u, 0x11u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P6_U0_BASE) }, /* TD 16 */ - { 2048u, 0x12u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B1_P2_U0_BASE) }, /* TD 17 */ + { 896u, 0x0Fu, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P4_U0_BASE) }, /* TD 14 */ + { 896u, 0x10u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P6_U0_BASE) }, /* TD 15 */ + { 384u, 0x11u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B1_P3_U0_BASE) }, /* TD 16 */ + { 1024u, 0x12u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B1_P4_U0_BASE) }, /* TD 17 */ { 128u, 0x13u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI1_BASE) }, /* TD 18 */ { 128u, 0x14u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI2_BASE) }, /* TD 19 */ - { 256u, 0x15u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI3_BASE) }, /* TD 20 */ - { 128u, 0x16u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI5_BASE) }, /* TD 21 */ - { 128u, 0x17u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI6_BASE) }, /* TD 22 */ - { 128u, 0x18u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI7_BASE) }, /* TD 23 */ - { 512u, 0x19u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI8_BASE) }, /* TD 24 */ - { 512u, 0xFFu, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI12_BASE) }, /* TD 25 */ - { 32u, 0xFFu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UWRK_UWRK8_B0_BASE + 0x00000070u) }, /* TD 26 */ + { 128u, 0x15u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI5_BASE) }, /* TD 20 */ + { 128u, 0x16u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI6_BASE) }, /* TD 21 */ + { 384u, 0x17u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI7_BASE) }, /* TD 22 */ + { 256u, 0x18u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI9_BASE) }, /* TD 23 */ + { 512u, 0xFFu, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI12_BASE) }, /* TD 24 */ + { 32u, 0x1Au, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UWRK_UWRK8_B0_BASE + 0x00000070u) }, /* TD 25 */ + { 32u, 0xFFu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UWRK_UWRK8_B1_BASE + 0x00000070u) }, /* TD 26 */ { 128u, 0x1Cu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P0_U0_BASE) }, /* TD 27 */ { 128u, 0x1Du, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P0_U1_BASE) }, /* TD 28 */ { 128u, 0x1Eu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P1_U0_BASE) }, /* TD 29 */ { 128u, 0x1Fu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P1_U1_BASE) }, /* TD 30 */ { 128u, 0x20u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P2_U0_BASE) }, /* TD 31 */ { 128u, 0x21u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P2_U1_BASE) }, /* TD 32 */ - { 128u, 0x22u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI7_BASE + 0x00000080u) }, /* TD 33 */ - { 128u, 0x23u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI6_BASE + 0x00000080u) }, /* TD 34 */ - { 128u, 0x24u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI5_BASE + 0x00000080u) }, /* TD 35 */ - { 128u, 0x25u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI4_BASE) }, /* TD 36 */ - { 128u, 0x26u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI4_BASE + 0x00000080u) }, /* TD 37 */ - { 128u, 0x27u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P4_ROUTE_BASE + 0x00000080u) }, /* TD 38 */ - { 128u, 0x28u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P3_ROUTE_BASE + 0x00000080u) }, /* TD 39 */ - { 128u, 0x29u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P5_ROUTE_BASE + 0x00000080u) }, /* TD 40 */ - { 128u, 0x2Au, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P2_ROUTE_BASE) }, /* TD 41 */ - { 128u, 0x2Bu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P2_ROUTE_BASE + 0x00000080u) }, /* TD 42 */ - { 128u, 0x2Cu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P1_ROUTE_BASE) }, /* TD 43 */ - { 128u, 0x2Du, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P1_ROUTE_BASE + 0x00000080u) }, /* TD 44 */ - { 128u, 0x2Eu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P0_ROUTE_BASE) }, /* TD 45 */ - { 128u, 0x2Fu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P0_ROUTE_BASE + 0x00000080u) }, /* TD 46 */ - { 128u, 0x30u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI2_BASE + 0x00000080u) }, /* TD 47 */ - { 128u, 0x31u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI1_BASE + 0x00000080u) }, /* TD 48 */ - { 128u, 0x32u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI0_BASE) }, /* TD 49 */ - { 128u, 0x33u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI0_BASE + 0x00000080u) }, /* TD 50 */ - { 16u, 0xFFu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYREG_BCTL0_MDCLK_EN) }, /* TD 51 */ + { 128u, 0x22u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B1_P2_U0_BASE) }, /* TD 33 */ + { 128u, 0x23u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B1_P2_U1_BASE) }, /* TD 34 */ + { 128u, 0x24u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI6_BASE + 0x00000080u) }, /* TD 35 */ + { 128u, 0x25u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI5_BASE + 0x00000080u) }, /* TD 36 */ + { 128u, 0x26u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI4_BASE) }, /* TD 37 */ + { 128u, 0x27u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI4_BASE + 0x00000080u) }, /* TD 38 */ + { 128u, 0x28u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B1_P2_ROUTE_BASE) }, /* TD 39 */ + { 128u, 0x29u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B1_P2_ROUTE_BASE + 0x00000080u) }, /* TD 40 */ + { 128u, 0x2Au, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B1_P3_ROUTE_BASE + 0x00000080u) }, /* TD 41 */ + { 128u, 0x2Bu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P3_ROUTE_BASE + 0x00000080u) }, /* TD 42 */ + { 128u, 0x2Cu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P5_ROUTE_BASE + 0x00000080u) }, /* TD 43 */ + { 128u, 0x2Du, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P2_ROUTE_BASE) }, /* TD 44 */ + { 128u, 0x2Eu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P2_ROUTE_BASE + 0x00000080u) }, /* TD 45 */ + { 128u, 0x2Fu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P1_ROUTE_BASE) }, /* TD 46 */ + { 128u, 0x30u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P1_ROUTE_BASE + 0x00000080u) }, /* TD 47 */ + { 128u, 0x31u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P7_ROUTE_BASE + 0x00000080u) }, /* TD 48 */ + { 128u, 0x32u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P0_ROUTE_BASE) }, /* TD 49 */ + { 128u, 0x33u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P0_ROUTE_BASE + 0x00000080u) }, /* TD 50 */ + { 128u, 0x34u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI8_BASE + 0x00000080u) }, /* TD 51 */ + { 128u, 0x35u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI3_BASE) }, /* TD 52 */ + { 128u, 0x36u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI3_BASE + 0x00000080u) }, /* TD 53 */ + { 128u, 0x37u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI2_BASE + 0x00000080u) }, /* TD 54 */ + { 128u, 0x38u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI1_BASE + 0x00000080u) }, /* TD 55 */ + { 128u, 0x39u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI0_BASE) }, /* TD 56 */ + { 128u, 0x3Au, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI0_BASE + 0x00000080u) }, /* TD 57 */ + { 16u, 0x3Bu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYREG_BCTL1_MDCLK_EN) }, /* TD 58 */ + { 16u, 0xFFu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYREG_BCTL0_MDCLK_EN) }, /* TD 59 */ }; /* Source addresses can be relocated, but only when in 32bit addresses. @@ -428,33 +463,41 @@ static void cfg_dma_init(void) (const void *)(&DMA_ZERO_VAL), /* TD 22 */ (const void *)(&DMA_ZERO_VAL), /* TD 23 */ (const void *)(&DMA_ZERO_VAL), /* TD 24 */ - (const void *)(&DMA_ZERO_VAL), /* TD 25 */ - (const void *)(BS_UWRK_B0_WRK_STATCTL_BITS_VAL), /* TD 26 */ + (const void *)(BS_UWRK_B0_WRK_STATCTL_BITS_VAL), /* TD 25 */ + (const void *)(BS_UWRK_B1_WRK_STATCTL_BITS_VAL), /* TD 26 */ (const void *)(BS_UDB_1_5_0_CONFIG_VAL), /* TD 27 */ (const void *)(BS_UDB_1_5_1_CONFIG_VAL), /* TD 28 */ (const void *)(BS_UDB_1_4_1_CONFIG_VAL), /* TD 29 */ (const void *)(BS_UDB_1_4_0_CONFIG_VAL), /* TD 30 */ (const void *)(BS_UDB_1_3_0_CONFIG_VAL), /* TD 31 */ (const void *)(BS_UDB_1_3_1_CONFIG_VAL), /* TD 32 */ - (const void *)(BS_DSI0_2_HV_ROUTING_VAL), /* TD 33 */ - (const void *)(BS_DSI0_3_HV_ROUTING_VAL), /* TD 34 */ - (const void *)(BS_DSI0_4_HV_ROUTING_VAL), /* TD 35 */ - (const void *)(BS_DSISWITCH_0_5_VAL), /* TD 36 */ - (const void *)(BS_DSI0_5_HV_ROUTING_VAL), /* TD 37 */ - (const void *)(BS_UDB_1_2_HV_ROUTING_VAL), /* TD 38 */ - (const void *)(BS_UDB_2_2_HV_ROUTING_VAL), /* TD 39 */ - (const void *)(BS_UDB_1_3_HV_ROUTING_VAL), /* TD 40 */ - (const void *)(BS_UDBSWITCH_1_3_VAL), /* TD 41 */ - (const void *)(BS_UDB_2_3_HV_ROUTING_VAL), /* TD 42 */ - (const void *)(BS_UDBSWITCH_1_4_VAL), /* TD 43 */ - (const void *)(BS_UDB_2_4_HV_ROUTING_VAL), /* TD 44 */ - (const void *)(BS_UDBSWITCH_1_5_VAL), /* TD 45 */ - (const void *)(BS_UDB_2_5_HV_ROUTING_VAL), /* TD 46 */ - (const void *)(BS_DSI3_3_HV_ROUTING_VAL), /* TD 47 */ - (const void *)(BS_DSI3_4_HV_ROUTING_VAL), /* TD 48 */ - (const void *)(BS_DSISWITCH_1_5_VAL), /* TD 49 */ - (const void *)(BS_DSI3_5_HV_ROUTING_VAL), /* TD 50 */ - (const void *)(BS_UCFG_BCTL0_VAL), /* TD 51 */ + (const void *)(BS_UDB_1_0_0_CONFIG_VAL), /* TD 33 */ + (const void *)(BS_UDB_1_0_1_CONFIG_VAL), /* TD 34 */ + (const void *)(BS_DSI0_3_HV_ROUTING_VAL), /* TD 35 */ + (const void *)(BS_DSI0_4_HV_ROUTING_VAL), /* TD 36 */ + (const void *)(BS_DSISWITCH_0_5_VAL), /* TD 37 */ + (const void *)(BS_DSI0_5_HV_ROUTING_VAL), /* TD 38 */ + (const void *)(BS_UDBSWITCH_1_0_VAL), /* TD 39 */ + (const void *)(BS_UDB_2_0_HV_ROUTING_VAL), /* TD 40 */ + (const void *)(BS_UDB_2_1_HV_ROUTING_VAL), /* TD 41 */ + (const void *)(BS_UDB_2_2_HV_ROUTING_VAL), /* TD 42 */ + (const void *)(BS_UDB_1_3_HV_ROUTING_VAL), /* TD 43 */ + (const void *)(BS_UDBSWITCH_1_3_VAL), /* TD 44 */ + (const void *)(BS_UDB_2_3_HV_ROUTING_VAL), /* TD 45 */ + (const void *)(BS_UDBSWITCH_1_4_VAL), /* TD 46 */ + (const void *)(BS_UDB_2_4_HV_ROUTING_VAL), /* TD 47 */ + (const void *)(BS_UDB_1_5_HV_ROUTING_VAL), /* TD 48 */ + (const void *)(BS_UDBSWITCH_1_5_VAL), /* TD 49 */ + (const void *)(BS_UDB_2_5_HV_ROUTING_VAL), /* TD 50 */ + (const void *)(BS_DSI3_1_HV_ROUTING_VAL), /* TD 51 */ + (const void *)(BS_DSISWITCH_1_2_VAL), /* TD 52 */ + (const void *)(BS_DSI3_2_HV_ROUTING_VAL), /* TD 53 */ + (const void *)(BS_DSI3_3_HV_ROUTING_VAL), /* TD 54 */ + (const void *)(BS_DSI3_4_HV_ROUTING_VAL), /* TD 55 */ + (const void *)(BS_DSISWITCH_1_5_VAL), /* TD 56 */ + (const void *)(BS_DSI3_5_HV_ROUTING_VAL), /* TD 57 */ + (const void *)(BS_UCFG_BCTL1_VAL), /* TD 58 */ + (const void *)(BS_UCFG_BCTL0_VAL), /* TD 59 */ }; @@ -464,7 +507,7 @@ static void cfg_dma_init(void) CY_SET_REG8((void CYXDATA *)CYREG_PHUB_CFGMEM0_CFG0, 0x10u); /* set burstcnt */ CY_SET_REG8((void CYXDATA *)CYREG_PHUB_CH0_BASIC_CFG, 0x01u); /* enable ch0 */ CY_SET_REG8((void CYXDATA *)(CYREG_PHUB_CH0_BASIC_STATUS+1u), 0x00u); /* set first TD to 0 */ - CY_SET_REG16((void CYXDATA *)CYREG_PHUB_TDMEM0_ORIG_TD0, 51u*8u); /* transfer size */ + CY_SET_REG16((void CYXDATA *)CYREG_PHUB_TDMEM0_ORIG_TD0, 59u*8u); /* transfer size */ CY_SET_REG8((void CYXDATA *)(CYREG_PHUB_TDMEM0_ORIG_TD0+2u), 0x01u); /* set next TD to 1 */ CY_SET_REG8((void CYXDATA *)(CYREG_PHUB_TDMEM0_ORIG_TD0+3u), 0x03u); /* set TD flags */ CY_SET_REG16((void CYXDATA *)CYREG_PHUB_TDMEM0_ORIG_TD1, (uint16)(uint32)CFG_TD_LIST0); /* set td0's src addr */ @@ -473,7 +516,7 @@ static void cfg_dma_init(void) CY_SET_REG16((void CYXDATA *)(CYREG_PHUB_CFGMEM0_CFG1+2u), (uint16)(CYDEV_PHUB_TDMEM1_BASE >> 16)); /* set ch0's dst high addr */ CY_SET_REG8((void CYXDATA *)(CYREG_PHUB_CH1_BASIC_STATUS+1u), 0x09u); /* ch1 first TD: 9 */ CY_SET_REG8((void CYXDATA *)(CYREG_PHUB_CH2_BASIC_STATUS+1u), 0x0Du); /* ch2 first TD: 13 */ - CY_SET_REG8((void CYXDATA *)(CYREG_PHUB_CH5_BASIC_STATUS+1u), 0x1Au); /* ch5 first TD: 26 */ + CY_SET_REG8((void CYXDATA *)(CYREG_PHUB_CH5_BASIC_STATUS+1u), 0x19u); /* ch5 first TD: 25 */ CY_SET_REG8((void CYXDATA *)(CYREG_PHUB_CH6_BASIC_STATUS+1u), 0x1Bu); /* ch6 first TD: 27 */ CY_CFG_MEMORY_BARRIER(); @@ -484,7 +527,7 @@ static void cfg_dma_init(void) while (CY_GET_REG16((void CYXDATA *)CYREG_PHUB_TDMEM0_ORIG_TD0) != 0u) { } /* Recombine TD source table (CFG_TD_ADDR0) with full TD table (CFG_TD_LIST0) */ - for (i = 0u; i < 51u; i++) + for (i = 0u; i < 59u; i++) { CY_SET_REG16((void CYXDATA *)(CYREG_PHUB_TDMEM1_ORIG_TD1 + (sizeof(struct td_t)*i)), (uint16)(uint32)CFG_TD_ADDR0[i]); } @@ -527,15 +570,13 @@ static void cfg_dma_init(void) static void ClockSetup(void); static void ClockSetup(void) { - uint32 timeout; - uint8 pllLock; /* Configure Digital Clocks based on settings from Clock DWR */ CY_SET_XTND_REG16((void CYFAR *)(CYREG_CLKDIST_DCFG0_CFG0), 0x000Bu); - CY_SET_XTND_REG8((void CYFAR *)(CYREG_CLKDIST_DCFG0_CFG0 + 0x2), 0x18u); + CY_SET_XTND_REG8((void CYFAR *)(CYREG_CLKDIST_DCFG0_CFG0 + 0x2u), 0x18u); CY_SET_XTND_REG16((void CYFAR *)(CYREG_CLKDIST_DCFG1_CFG0), 0x0019u); - CY_SET_XTND_REG8((void CYFAR *)(CYREG_CLKDIST_DCFG1_CFG0 + 0x2), 0x18u); + CY_SET_XTND_REG8((void CYFAR *)(CYREG_CLKDIST_DCFG1_CFG0 + 0x2u), 0x18u); /* Configure ILO based on settings from Clock DWR */ CY_SET_XTND_REG8((void CYFAR *)(CYREG_SLOWCLK_ILO_CR0), 0x02u); @@ -548,12 +589,8 @@ static void ClockSetup(void) /* Configure PLL based on settings from Clock DWR */ CY_SET_XTND_REG16((void CYFAR *)(CYREG_FASTCLK_PLL_P), 0x0008u); CY_SET_XTND_REG16((void CYFAR *)(CYREG_FASTCLK_PLL_CFG0), 0x1051u); - /* Wait up to 250us for the PLL to lock */ - pllLock = 0u; - for (timeout = 250u / 10u; (timeout > 0u) && (pllLock != 0x03u); timeout--) { - pllLock = 0x03u & ((uint8)((uint8)pllLock << 1) | ((CY_GET_XTND_REG8((void CYFAR *)CYREG_FASTCLK_PLL_SR) & 0x01u) >> 0)); - CyDelayCycles(10u * 12u); /* Delay 10us based on 12MHz clock */ - } + /* Wait 250us for the PLL to lock */ + CyDelayCycles(250u * 12u); /* Delay 250us based on 12MHz clock */ /* Configure Bus/Master Clock based on settings from Clock DWR */ CY_SET_XTND_REG8((void CYFAR *)(CYREG_CLKDIST_MSTR0), 0x03u); @@ -653,6 +690,7 @@ void SetAnalogRoutingPumps(uint8 enabled) * void * *******************************************************************************/ + void cyfitter_cfg(void) { #ifdef CYGlobalIntDisable diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyfitter_cfg.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyfitter_cfg.h index e3c9cdf..06bfc82 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyfitter_cfg.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyfitter_cfg.h @@ -1,6 +1,6 @@ /******************************************************************************* * FILENAME: cyfitter_cfg.h -* PSoC Creator 2.2 Component Pack 5 +* PSoC Creator 2.2 Component Pack 6 * * Description: * This file is automatically generated by PSoC Creator. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyfittergnu.inc b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyfittergnu.inc index 96bbbe9..2c4dc87 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyfittergnu.inc +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyfittergnu.inc @@ -3,6 +3,80 @@ .include "cydevicegnu.inc" .include "cydevicegnu_trm.inc" +/* Timer_1_TimerUDB */ +.set Timer_1_TimerUDB_nrstSts_stsreg__0__MASK, 0x01 +.set Timer_1_TimerUDB_nrstSts_stsreg__0__POS, 0 +.set Timer_1_TimerUDB_nrstSts_stsreg__16BIT_STATUS_AUX_CTL_REG, CYREG_B1_UDB04_05_ACTL +.set Timer_1_TimerUDB_nrstSts_stsreg__16BIT_STATUS_REG, CYREG_B1_UDB04_05_ST +.set Timer_1_TimerUDB_nrstSts_stsreg__2__MASK, 0x04 +.set Timer_1_TimerUDB_nrstSts_stsreg__2__POS, 2 +.set Timer_1_TimerUDB_nrstSts_stsreg__3__MASK, 0x08 +.set Timer_1_TimerUDB_nrstSts_stsreg__3__POS, 3 +.set Timer_1_TimerUDB_nrstSts_stsreg__MASK, 0x0D +.set Timer_1_TimerUDB_nrstSts_stsreg__MASK_REG, CYREG_B1_UDB04_MSK +.set Timer_1_TimerUDB_nrstSts_stsreg__MASK_ST_AUX_CTL_REG, CYREG_B1_UDB04_MSK_ACTL +.set Timer_1_TimerUDB_nrstSts_stsreg__PER_ST_AUX_CTL_REG, CYREG_B1_UDB04_MSK_ACTL +.set Timer_1_TimerUDB_nrstSts_stsreg__STATUS_AUX_CTL_REG, CYREG_B1_UDB04_ACTL +.set Timer_1_TimerUDB_nrstSts_stsreg__STATUS_CNT_REG, CYREG_B1_UDB04_ST_CTL +.set Timer_1_TimerUDB_nrstSts_stsreg__STATUS_CONTROL_REG, CYREG_B1_UDB04_ST_CTL +.set Timer_1_TimerUDB_nrstSts_stsreg__STATUS_REG, CYREG_B1_UDB04_ST +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_CONTROL_AUX_CTL_REG, CYREG_B1_UDB04_05_ACTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_CONTROL_CONTROL_REG, CYREG_B1_UDB04_05_CTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_CONTROL_COUNT_REG, CYREG_B1_UDB04_05_CTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_COUNT_CONTROL_REG, CYREG_B1_UDB04_05_CTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_COUNT_COUNT_REG, CYREG_B1_UDB04_05_CTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_MASK_MASK_REG, CYREG_B1_UDB04_05_MSK +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_MASK_PERIOD_REG, CYREG_B1_UDB04_05_MSK +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_PERIOD_MASK_REG, CYREG_B1_UDB04_05_MSK +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_PERIOD_PERIOD_REG, CYREG_B1_UDB04_05_MSK +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__7__MASK, 0x80 +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__7__POS, 7 +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__CONTROL_AUX_CTL_REG, CYREG_B1_UDB04_ACTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__CONTROL_REG, CYREG_B1_UDB04_CTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__CONTROL_ST_REG, CYREG_B1_UDB04_ST_CTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__COUNT_REG, CYREG_B1_UDB04_CTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__COUNT_ST_REG, CYREG_B1_UDB04_ST_CTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__MASK, 0x80 +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__MASK_CTL_AUX_CTL_REG, CYREG_B1_UDB04_MSK_ACTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__PERIOD_REG, CYREG_B1_UDB04_MSK +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__PER_CTL_AUX_CTL_REG, CYREG_B1_UDB04_MSK_ACTL +.set Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_A0_REG, CYREG_B1_UDB04_05_A0 +.set Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_A1_REG, CYREG_B1_UDB04_05_A1 +.set Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_D0_REG, CYREG_B1_UDB04_05_D0 +.set Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_D1_REG, CYREG_B1_UDB04_05_D1 +.set Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_DP_AUX_CTL_REG, CYREG_B1_UDB04_05_ACTL +.set Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_F0_REG, CYREG_B1_UDB04_05_F0 +.set Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_F1_REG, CYREG_B1_UDB04_05_F1 +.set Timer_1_TimerUDB_sT16_timerdp_u0__A0_A1_REG, CYREG_B1_UDB04_A0_A1 +.set Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG, CYREG_B1_UDB04_A0 +.set Timer_1_TimerUDB_sT16_timerdp_u0__A1_REG, CYREG_B1_UDB04_A1 +.set Timer_1_TimerUDB_sT16_timerdp_u0__D0_D1_REG, CYREG_B1_UDB04_D0_D1 +.set Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG, CYREG_B1_UDB04_D0 +.set Timer_1_TimerUDB_sT16_timerdp_u0__D1_REG, CYREG_B1_UDB04_D1 +.set Timer_1_TimerUDB_sT16_timerdp_u0__DP_AUX_CTL_REG, CYREG_B1_UDB04_ACTL +.set Timer_1_TimerUDB_sT16_timerdp_u0__F0_F1_REG, CYREG_B1_UDB04_F0_F1 +.set Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG, CYREG_B1_UDB04_F0 +.set Timer_1_TimerUDB_sT16_timerdp_u0__F1_REG, CYREG_B1_UDB04_F1 +.set Timer_1_TimerUDB_sT16_timerdp_u0__MSK_DP_AUX_CTL_REG, CYREG_B1_UDB04_MSK_ACTL +.set Timer_1_TimerUDB_sT16_timerdp_u0__PER_DP_AUX_CTL_REG, CYREG_B1_UDB04_MSK_ACTL +.set Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_A0_REG, CYREG_B1_UDB05_06_A0 +.set Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_A1_REG, CYREG_B1_UDB05_06_A1 +.set Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_D0_REG, CYREG_B1_UDB05_06_D0 +.set Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_D1_REG, CYREG_B1_UDB05_06_D1 +.set Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_DP_AUX_CTL_REG, CYREG_B1_UDB05_06_ACTL +.set Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_F0_REG, CYREG_B1_UDB05_06_F0 +.set Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_F1_REG, CYREG_B1_UDB05_06_F1 +.set Timer_1_TimerUDB_sT16_timerdp_u1__A0_A1_REG, CYREG_B1_UDB05_A0_A1 +.set Timer_1_TimerUDB_sT16_timerdp_u1__A0_REG, CYREG_B1_UDB05_A0 +.set Timer_1_TimerUDB_sT16_timerdp_u1__A1_REG, CYREG_B1_UDB05_A1 +.set Timer_1_TimerUDB_sT16_timerdp_u1__D0_D1_REG, CYREG_B1_UDB05_D0_D1 +.set Timer_1_TimerUDB_sT16_timerdp_u1__D0_REG, CYREG_B1_UDB05_D0 +.set Timer_1_TimerUDB_sT16_timerdp_u1__D1_REG, CYREG_B1_UDB05_D1 +.set Timer_1_TimerUDB_sT16_timerdp_u1__DP_AUX_CTL_REG, CYREG_B1_UDB05_ACTL +.set Timer_1_TimerUDB_sT16_timerdp_u1__F0_F1_REG, CYREG_B1_UDB05_F0_F1 +.set Timer_1_TimerUDB_sT16_timerdp_u1__F0_REG, CYREG_B1_UDB05_F0 +.set Timer_1_TimerUDB_sT16_timerdp_u1__F1_REG, CYREG_B1_UDB05_F1 + /* SPIM_IntClock */ .set SPIM_IntClock__CFG0, CYREG_CLKDIST_DCFG0_CFG0 .set SPIM_IntClock__CFG1, CYREG_CLKDIST_DCFG0_CFG1 @@ -15,27 +89,27 @@ .set SPIM_IntClock__PM_STBY_MSK, 0x01 /* UART_1_BUART */ -.set UART_1_BUART_sTX_TxShifter_u0__16BIT_A0_REG, CYREG_B0_UDB01_02_A0 -.set UART_1_BUART_sTX_TxShifter_u0__16BIT_A1_REG, CYREG_B0_UDB01_02_A1 -.set UART_1_BUART_sTX_TxShifter_u0__16BIT_D0_REG, CYREG_B0_UDB01_02_D0 -.set UART_1_BUART_sTX_TxShifter_u0__16BIT_D1_REG, CYREG_B0_UDB01_02_D1 -.set UART_1_BUART_sTX_TxShifter_u0__16BIT_DP_AUX_CTL_REG, CYREG_B0_UDB01_02_ACTL -.set UART_1_BUART_sTX_TxShifter_u0__16BIT_F0_REG, CYREG_B0_UDB01_02_F0 -.set UART_1_BUART_sTX_TxShifter_u0__16BIT_F1_REG, CYREG_B0_UDB01_02_F1 -.set UART_1_BUART_sTX_TxShifter_u0__A0_A1_REG, CYREG_B0_UDB01_A0_A1 -.set UART_1_BUART_sTX_TxShifter_u0__A0_REG, CYREG_B0_UDB01_A0 -.set UART_1_BUART_sTX_TxShifter_u0__A1_REG, CYREG_B0_UDB01_A1 -.set UART_1_BUART_sTX_TxShifter_u0__D0_D1_REG, CYREG_B0_UDB01_D0_D1 -.set UART_1_BUART_sTX_TxShifter_u0__D0_REG, CYREG_B0_UDB01_D0 -.set UART_1_BUART_sTX_TxShifter_u0__D1_REG, CYREG_B0_UDB01_D1 -.set UART_1_BUART_sTX_TxShifter_u0__DP_AUX_CTL_REG, CYREG_B0_UDB01_ACTL -.set UART_1_BUART_sTX_TxShifter_u0__F0_F1_REG, CYREG_B0_UDB01_F0_F1 -.set UART_1_BUART_sTX_TxShifter_u0__F0_REG, CYREG_B0_UDB01_F0 -.set UART_1_BUART_sTX_TxShifter_u0__F1_REG, CYREG_B0_UDB01_F1 +.set UART_1_BUART_sTX_TxShifter_u0__16BIT_A0_REG, CYREG_B0_UDB04_05_A0 +.set UART_1_BUART_sTX_TxShifter_u0__16BIT_A1_REG, CYREG_B0_UDB04_05_A1 +.set UART_1_BUART_sTX_TxShifter_u0__16BIT_D0_REG, CYREG_B0_UDB04_05_D0 +.set UART_1_BUART_sTX_TxShifter_u0__16BIT_D1_REG, CYREG_B0_UDB04_05_D1 +.set UART_1_BUART_sTX_TxShifter_u0__16BIT_DP_AUX_CTL_REG, CYREG_B0_UDB04_05_ACTL +.set UART_1_BUART_sTX_TxShifter_u0__16BIT_F0_REG, CYREG_B0_UDB04_05_F0 +.set UART_1_BUART_sTX_TxShifter_u0__16BIT_F1_REG, CYREG_B0_UDB04_05_F1 +.set UART_1_BUART_sTX_TxShifter_u0__A0_A1_REG, CYREG_B0_UDB04_A0_A1 +.set UART_1_BUART_sTX_TxShifter_u0__A0_REG, CYREG_B0_UDB04_A0 +.set UART_1_BUART_sTX_TxShifter_u0__A1_REG, CYREG_B0_UDB04_A1 +.set UART_1_BUART_sTX_TxShifter_u0__D0_D1_REG, CYREG_B0_UDB04_D0_D1 +.set UART_1_BUART_sTX_TxShifter_u0__D0_REG, CYREG_B0_UDB04_D0 +.set UART_1_BUART_sTX_TxShifter_u0__D1_REG, CYREG_B0_UDB04_D1 +.set UART_1_BUART_sTX_TxShifter_u0__DP_AUX_CTL_REG, CYREG_B0_UDB04_ACTL +.set UART_1_BUART_sTX_TxShifter_u0__F0_F1_REG, CYREG_B0_UDB04_F0_F1 +.set UART_1_BUART_sTX_TxShifter_u0__F0_REG, CYREG_B0_UDB04_F0 +.set UART_1_BUART_sTX_TxShifter_u0__F1_REG, CYREG_B0_UDB04_F1 .set UART_1_BUART_sTX_TxSts__0__MASK, 0x01 .set UART_1_BUART_sTX_TxSts__0__POS, 0 -.set UART_1_BUART_sTX_TxSts__16BIT_STATUS_AUX_CTL_REG, CYREG_B0_UDB02_03_ACTL -.set UART_1_BUART_sTX_TxSts__16BIT_STATUS_REG, CYREG_B0_UDB02_03_ST +.set UART_1_BUART_sTX_TxSts__16BIT_STATUS_AUX_CTL_REG, CYREG_B0_UDB04_05_ACTL +.set UART_1_BUART_sTX_TxSts__16BIT_STATUS_REG, CYREG_B0_UDB04_05_ST .set UART_1_BUART_sTX_TxSts__1__MASK, 0x02 .set UART_1_BUART_sTX_TxSts__1__POS, 1 .set UART_1_BUART_sTX_TxSts__2__MASK, 0x04 @@ -43,26 +117,26 @@ .set UART_1_BUART_sTX_TxSts__3__MASK, 0x08 .set UART_1_BUART_sTX_TxSts__3__POS, 3 .set UART_1_BUART_sTX_TxSts__MASK, 0x0F -.set UART_1_BUART_sTX_TxSts__MASK_REG, CYREG_B0_UDB02_MSK -.set UART_1_BUART_sTX_TxSts__STATUS_AUX_CTL_REG, CYREG_B0_UDB02_ACTL -.set UART_1_BUART_sTX_TxSts__STATUS_REG, CYREG_B0_UDB02_ST -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A0_REG, CYREG_B0_UDB00_01_A0 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A1_REG, CYREG_B0_UDB00_01_A1 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D0_REG, CYREG_B0_UDB00_01_D0 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D1_REG, CYREG_B0_UDB00_01_D1 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_DP_AUX_CTL_REG, CYREG_B0_UDB00_01_ACTL -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F0_REG, CYREG_B0_UDB00_01_F0 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F1_REG, CYREG_B0_UDB00_01_F1 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_A1_REG, CYREG_B0_UDB00_A0_A1 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_REG, CYREG_B0_UDB00_A0 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A1_REG, CYREG_B0_UDB00_A1 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_D1_REG, CYREG_B0_UDB00_D0_D1 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_REG, CYREG_B0_UDB00_D0 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D1_REG, CYREG_B0_UDB00_D1 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__DP_AUX_CTL_REG, CYREG_B0_UDB00_ACTL -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_F1_REG, CYREG_B0_UDB00_F0_F1 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_REG, CYREG_B0_UDB00_F0 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F1_REG, CYREG_B0_UDB00_F1 +.set UART_1_BUART_sTX_TxSts__MASK_REG, CYREG_B0_UDB04_MSK +.set UART_1_BUART_sTX_TxSts__STATUS_AUX_CTL_REG, CYREG_B0_UDB04_ACTL +.set UART_1_BUART_sTX_TxSts__STATUS_REG, CYREG_B0_UDB04_ST +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A0_REG, CYREG_B0_UDB05_06_A0 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A1_REG, CYREG_B0_UDB05_06_A1 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D0_REG, CYREG_B0_UDB05_06_D0 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D1_REG, CYREG_B0_UDB05_06_D1 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_DP_AUX_CTL_REG, CYREG_B0_UDB05_06_ACTL +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F0_REG, CYREG_B0_UDB05_06_F0 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F1_REG, CYREG_B0_UDB05_06_F1 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_A1_REG, CYREG_B0_UDB05_A0_A1 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_REG, CYREG_B0_UDB05_A0 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A1_REG, CYREG_B0_UDB05_A1 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_D1_REG, CYREG_B0_UDB05_D0_D1 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_REG, CYREG_B0_UDB05_D0 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D1_REG, CYREG_B0_UDB05_D1 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__DP_AUX_CTL_REG, CYREG_B0_UDB05_ACTL +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_F1_REG, CYREG_B0_UDB05_F0_F1 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_REG, CYREG_B0_UDB05_F0 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F1_REG, CYREG_B0_UDB05_F1 /* LCD_LCDPort */ .set LCD_LCDPort__0__MASK, 0x01 @@ -243,8 +317,8 @@ .set SPIM_BSPIM_BitCounter__MASK_CTL_AUX_CTL_REG, CYREG_B0_UDB03_MSK_ACTL .set SPIM_BSPIM_BitCounter__PERIOD_REG, CYREG_B0_UDB03_MSK .set SPIM_BSPIM_BitCounter__PER_CTL_AUX_CTL_REG, CYREG_B0_UDB03_MSK_ACTL -.set SPIM_BSPIM_RxStsReg__16BIT_STATUS_AUX_CTL_REG, CYREG_B0_UDB00_01_ACTL -.set SPIM_BSPIM_RxStsReg__16BIT_STATUS_REG, CYREG_B0_UDB00_01_ST +.set SPIM_BSPIM_RxStsReg__16BIT_STATUS_AUX_CTL_REG, CYREG_B0_UDB02_03_ACTL +.set SPIM_BSPIM_RxStsReg__16BIT_STATUS_REG, CYREG_B0_UDB02_03_ST .set SPIM_BSPIM_RxStsReg__4__MASK, 0x10 .set SPIM_BSPIM_RxStsReg__4__POS, 4 .set SPIM_BSPIM_RxStsReg__5__MASK, 0x20 @@ -252,13 +326,13 @@ .set SPIM_BSPIM_RxStsReg__6__MASK, 0x40 .set SPIM_BSPIM_RxStsReg__6__POS, 6 .set SPIM_BSPIM_RxStsReg__MASK, 0x70 -.set SPIM_BSPIM_RxStsReg__MASK_REG, CYREG_B0_UDB00_MSK -.set SPIM_BSPIM_RxStsReg__STATUS_AUX_CTL_REG, CYREG_B0_UDB00_ACTL -.set SPIM_BSPIM_RxStsReg__STATUS_REG, CYREG_B0_UDB00_ST +.set SPIM_BSPIM_RxStsReg__MASK_REG, CYREG_B0_UDB02_MSK +.set SPIM_BSPIM_RxStsReg__STATUS_AUX_CTL_REG, CYREG_B0_UDB02_ACTL +.set SPIM_BSPIM_RxStsReg__STATUS_REG, CYREG_B0_UDB02_ST .set SPIM_BSPIM_TxStsReg__0__MASK, 0x01 .set SPIM_BSPIM_TxStsReg__0__POS, 0 -.set SPIM_BSPIM_TxStsReg__16BIT_STATUS_AUX_CTL_REG, CYREG_B0_UDB04_05_ACTL -.set SPIM_BSPIM_TxStsReg__16BIT_STATUS_REG, CYREG_B0_UDB04_05_ST +.set SPIM_BSPIM_TxStsReg__16BIT_STATUS_AUX_CTL_REG, CYREG_B0_UDB00_01_ACTL +.set SPIM_BSPIM_TxStsReg__16BIT_STATUS_REG, CYREG_B0_UDB00_01_ST .set SPIM_BSPIM_TxStsReg__1__MASK, 0x02 .set SPIM_BSPIM_TxStsReg__1__POS, 1 .set SPIM_BSPIM_TxStsReg__2__MASK, 0x04 @@ -268,9 +342,9 @@ .set SPIM_BSPIM_TxStsReg__4__MASK, 0x10 .set SPIM_BSPIM_TxStsReg__4__POS, 4 .set SPIM_BSPIM_TxStsReg__MASK, 0x1F -.set SPIM_BSPIM_TxStsReg__MASK_REG, CYREG_B0_UDB04_MSK -.set SPIM_BSPIM_TxStsReg__STATUS_AUX_CTL_REG, CYREG_B0_UDB04_ACTL -.set SPIM_BSPIM_TxStsReg__STATUS_REG, CYREG_B0_UDB04_ST +.set SPIM_BSPIM_TxStsReg__MASK_REG, CYREG_B0_UDB00_MSK +.set SPIM_BSPIM_TxStsReg__STATUS_AUX_CTL_REG, CYREG_B0_UDB00_ACTL +.set SPIM_BSPIM_TxStsReg__STATUS_REG, CYREG_B0_UDB00_ST .set SPIM_BSPIM_sR8_Dp_u0__16BIT_A0_REG, CYREG_B0_UDB03_04_A0 .set SPIM_BSPIM_sR8_Dp_u0__16BIT_A1_REG, CYREG_B0_UDB03_04_A1 .set SPIM_BSPIM_sR8_Dp_u0__16BIT_D0_REG, CYREG_B0_UDB03_04_D0 @@ -430,6 +504,38 @@ .set Pin_4__SHIFT, 3 .set Pin_4__SLW, CYREG_PRT3_SLW +/* Pin_5 */ +.set Pin_5__0__MASK, 0x10 +.set Pin_5__0__PC, CYREG_PRT3_PC4 +.set Pin_5__0__PORT, 3 +.set Pin_5__0__SHIFT, 4 +.set Pin_5__AG, CYREG_PRT3_AG +.set Pin_5__AMUX, CYREG_PRT3_AMUX +.set Pin_5__BIE, CYREG_PRT3_BIE +.set Pin_5__BIT_MASK, CYREG_PRT3_BIT_MASK +.set Pin_5__BYP, CYREG_PRT3_BYP +.set Pin_5__CTL, CYREG_PRT3_CTL +.set Pin_5__DM0, CYREG_PRT3_DM0 +.set Pin_5__DM1, CYREG_PRT3_DM1 +.set Pin_5__DM2, CYREG_PRT3_DM2 +.set Pin_5__DR, CYREG_PRT3_DR +.set Pin_5__INP_DIS, CYREG_PRT3_INP_DIS +.set Pin_5__LCD_COM_SEG, CYREG_PRT3_LCD_COM_SEG +.set Pin_5__LCD_EN, CYREG_PRT3_LCD_EN +.set Pin_5__MASK, 0x10 +.set Pin_5__PORT, 3 +.set Pin_5__PRT, CYREG_PRT3_PRT +.set Pin_5__PRTDSI__CAPS_SEL, CYREG_PRT3_CAPS_SEL +.set Pin_5__PRTDSI__DBL_SYNC_IN, CYREG_PRT3_DBL_SYNC_IN +.set Pin_5__PRTDSI__OE_SEL0, CYREG_PRT3_OE_SEL0 +.set Pin_5__PRTDSI__OE_SEL1, CYREG_PRT3_OE_SEL1 +.set Pin_5__PRTDSI__OUT_SEL0, CYREG_PRT3_OUT_SEL0 +.set Pin_5__PRTDSI__OUT_SEL1, CYREG_PRT3_OUT_SEL1 +.set Pin_5__PRTDSI__SYNC_OUT, CYREG_PRT3_SYNC_OUT +.set Pin_5__PS, CYREG_PRT3_PS +.set Pin_5__SHIFT, 4 +.set Pin_5__SLW, CYREG_PRT3_SLW + /* Tx_1 */ .set Tx_1__0__MASK, 0x80 .set Tx_1__0__PC, CYREG_PRT3_PC7 @@ -465,26 +571,28 @@ /* SS */ .set SS_Async_ctrl_reg__0__MASK, 0x01 .set SS_Async_ctrl_reg__0__POS, 0 -.set SS_Async_ctrl_reg__16BIT_CONTROL_AUX_CTL_REG, CYREG_B0_UDB05_06_ACTL -.set SS_Async_ctrl_reg__16BIT_CONTROL_CONTROL_REG, CYREG_B0_UDB05_06_CTL -.set SS_Async_ctrl_reg__16BIT_CONTROL_COUNT_REG, CYREG_B0_UDB05_06_CTL -.set SS_Async_ctrl_reg__16BIT_COUNT_CONTROL_REG, CYREG_B0_UDB05_06_CTL -.set SS_Async_ctrl_reg__16BIT_COUNT_COUNT_REG, CYREG_B0_UDB05_06_CTL -.set SS_Async_ctrl_reg__16BIT_MASK_MASK_REG, CYREG_B0_UDB05_06_MSK -.set SS_Async_ctrl_reg__16BIT_MASK_PERIOD_REG, CYREG_B0_UDB05_06_MSK -.set SS_Async_ctrl_reg__16BIT_PERIOD_MASK_REG, CYREG_B0_UDB05_06_MSK -.set SS_Async_ctrl_reg__16BIT_PERIOD_PERIOD_REG, CYREG_B0_UDB05_06_MSK +.set SS_Async_ctrl_reg__16BIT_CONTROL_AUX_CTL_REG, CYREG_B0_UDB01_02_ACTL +.set SS_Async_ctrl_reg__16BIT_CONTROL_CONTROL_REG, CYREG_B0_UDB01_02_CTL +.set SS_Async_ctrl_reg__16BIT_CONTROL_COUNT_REG, CYREG_B0_UDB01_02_CTL +.set SS_Async_ctrl_reg__16BIT_COUNT_CONTROL_REG, CYREG_B0_UDB01_02_CTL +.set SS_Async_ctrl_reg__16BIT_COUNT_COUNT_REG, CYREG_B0_UDB01_02_CTL +.set SS_Async_ctrl_reg__16BIT_MASK_MASK_REG, CYREG_B0_UDB01_02_MSK +.set SS_Async_ctrl_reg__16BIT_MASK_PERIOD_REG, CYREG_B0_UDB01_02_MSK +.set SS_Async_ctrl_reg__16BIT_PERIOD_MASK_REG, CYREG_B0_UDB01_02_MSK +.set SS_Async_ctrl_reg__16BIT_PERIOD_PERIOD_REG, CYREG_B0_UDB01_02_MSK .set SS_Async_ctrl_reg__1__MASK, 0x02 .set SS_Async_ctrl_reg__1__POS, 1 -.set SS_Async_ctrl_reg__CONTROL_AUX_CTL_REG, CYREG_B0_UDB05_ACTL -.set SS_Async_ctrl_reg__CONTROL_REG, CYREG_B0_UDB05_CTL -.set SS_Async_ctrl_reg__CONTROL_ST_REG, CYREG_B0_UDB05_ST_CTL -.set SS_Async_ctrl_reg__COUNT_REG, CYREG_B0_UDB05_CTL -.set SS_Async_ctrl_reg__COUNT_ST_REG, CYREG_B0_UDB05_ST_CTL -.set SS_Async_ctrl_reg__MASK, 0x03 -.set SS_Async_ctrl_reg__MASK_CTL_AUX_CTL_REG, CYREG_B0_UDB05_MSK_ACTL -.set SS_Async_ctrl_reg__PERIOD_REG, CYREG_B0_UDB05_MSK -.set SS_Async_ctrl_reg__PER_CTL_AUX_CTL_REG, CYREG_B0_UDB05_MSK_ACTL +.set SS_Async_ctrl_reg__2__MASK, 0x04 +.set SS_Async_ctrl_reg__2__POS, 2 +.set SS_Async_ctrl_reg__CONTROL_AUX_CTL_REG, CYREG_B0_UDB01_ACTL +.set SS_Async_ctrl_reg__CONTROL_REG, CYREG_B0_UDB01_CTL +.set SS_Async_ctrl_reg__CONTROL_ST_REG, CYREG_B0_UDB01_ST_CTL +.set SS_Async_ctrl_reg__COUNT_REG, CYREG_B0_UDB01_CTL +.set SS_Async_ctrl_reg__COUNT_ST_REG, CYREG_B0_UDB01_ST_CTL +.set SS_Async_ctrl_reg__MASK, 0x07 +.set SS_Async_ctrl_reg__MASK_CTL_AUX_CTL_REG, CYREG_B0_UDB01_MSK_ACTL +.set SS_Async_ctrl_reg__PERIOD_REG, CYREG_B0_UDB01_MSK +.set SS_Async_ctrl_reg__PER_CTL_AUX_CTL_REG, CYREG_B0_UDB01_MSK_ACTL /* Miscellaneous */ /* -- WARNING: define names containing LEOPARD or PANTHER are deprecated and will be removed in a future release */ @@ -494,16 +602,17 @@ .set CYDEV_CONFIG_FASTBOOT_ENABLED, 0 .set CYDEV_CHIP_REV_PANTHER_PRODUCTION, 1 .set CYDEV_CHIP_REVISION_5A_PRODUCTION, 1 -.set CYDEV_CHIP_MEMBER_5A, 2 +.set CYDEV_CHIP_MEMBER_5A, 3 .set CYDEV_CHIP_FAMILY_PSOC5, 3 -.set CYDEV_CHIP_DIE_PANTHER, 2 +.set CYDEV_CHIP_DIE_PANTHER, 3 .set CYDEV_CHIP_DIE_EXPECT, CYDEV_CHIP_DIE_PANTHER .set BCLK__BUS_CLK__HZ, 24000000 .set BCLK__BUS_CLK__KHZ, 24000 .set BCLK__BUS_CLK__MHZ, 24 .set CYDEV_CHIP_DIE_ACTUAL, CYDEV_CHIP_DIE_EXPECT .set CYDEV_CHIP_DIE_LEOPARD, 1 -.set CYDEV_CHIP_DIE_PSOC5LP, 3 +.set CYDEV_CHIP_DIE_PSOC4A, 2 +.set CYDEV_CHIP_DIE_PSOC5LP, 4 .set CYDEV_CHIP_DIE_UNKNOWN, 0 .set CYDEV_CHIP_FAMILY_PSOC3, 1 .set CYDEV_CHIP_FAMILY_PSOC4, 2 @@ -511,13 +620,16 @@ .set CYDEV_CHIP_FAMILY_USED, CYDEV_CHIP_FAMILY_PSOC5 .set CYDEV_CHIP_JTAG_ID, 0x0E13C069 .set CYDEV_CHIP_MEMBER_3A, 1 -.set CYDEV_CHIP_MEMBER_5B, 3 +.set CYDEV_CHIP_MEMBER_4A, 2 +.set CYDEV_CHIP_MEMBER_5B, 4 .set CYDEV_CHIP_MEMBER_UNKNOWN, 0 .set CYDEV_CHIP_MEMBER_USED, CYDEV_CHIP_MEMBER_5A .set CYDEV_CHIP_REVISION_3A_ES1, 0 .set CYDEV_CHIP_REVISION_3A_ES2, 1 .set CYDEV_CHIP_REVISION_3A_ES3, 3 .set CYDEV_CHIP_REVISION_3A_PRODUCTION, 3 +.set CYDEV_CHIP_REVISION_4A_ES0, 17 +.set CYDEV_CHIP_REVISION_4A_PRODUCTION, 17 .set CYDEV_CHIP_REVISION_5A_ES0, 0 .set CYDEV_CHIP_REVISION_5A_ES1, 1 .set CYDEV_CHIP_REVISION_5B_ES0, 0 @@ -530,6 +642,8 @@ .set CYDEV_CHIP_REV_LEOPARD_PRODUCTION, 3 .set CYDEV_CHIP_REV_PANTHER_ES0, 0 .set CYDEV_CHIP_REV_PANTHER_ES1, 1 +.set CYDEV_CHIP_REV_PSOC4A_ES0, 17 +.set CYDEV_CHIP_REV_PSOC4A_PRODUCTION, 17 .set CYDEV_CHIP_REV_PSOC5LP_ES0, 0 .set CYDEV_CHIP_REV_PSOC5LP_PRODUCTION, 0 .set CYDEV_CONFIGURATION_COMPRESSED, 0 diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyfitterrv.inc b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyfitterrv.inc index fbcacf6..11eee07 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyfitterrv.inc +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyfitterrv.inc @@ -3,6 +3,80 @@ INCLUDED_CYFITTERRV_INC EQU 1 GET cydevicerv.inc GET cydevicerv_trm.inc +; Timer_1_TimerUDB +Timer_1_TimerUDB_nrstSts_stsreg__0__MASK EQU 0x01 +Timer_1_TimerUDB_nrstSts_stsreg__0__POS EQU 0 +Timer_1_TimerUDB_nrstSts_stsreg__16BIT_STATUS_AUX_CTL_REG EQU CYREG_B1_UDB04_05_ACTL +Timer_1_TimerUDB_nrstSts_stsreg__16BIT_STATUS_REG EQU CYREG_B1_UDB04_05_ST +Timer_1_TimerUDB_nrstSts_stsreg__2__MASK EQU 0x04 +Timer_1_TimerUDB_nrstSts_stsreg__2__POS EQU 2 +Timer_1_TimerUDB_nrstSts_stsreg__3__MASK EQU 0x08 +Timer_1_TimerUDB_nrstSts_stsreg__3__POS EQU 3 +Timer_1_TimerUDB_nrstSts_stsreg__MASK EQU 0x0D +Timer_1_TimerUDB_nrstSts_stsreg__MASK_REG EQU CYREG_B1_UDB04_MSK +Timer_1_TimerUDB_nrstSts_stsreg__MASK_ST_AUX_CTL_REG EQU CYREG_B1_UDB04_MSK_ACTL +Timer_1_TimerUDB_nrstSts_stsreg__PER_ST_AUX_CTL_REG EQU CYREG_B1_UDB04_MSK_ACTL +Timer_1_TimerUDB_nrstSts_stsreg__STATUS_AUX_CTL_REG EQU CYREG_B1_UDB04_ACTL +Timer_1_TimerUDB_nrstSts_stsreg__STATUS_CNT_REG EQU CYREG_B1_UDB04_ST_CTL +Timer_1_TimerUDB_nrstSts_stsreg__STATUS_CONTROL_REG EQU CYREG_B1_UDB04_ST_CTL +Timer_1_TimerUDB_nrstSts_stsreg__STATUS_REG EQU CYREG_B1_UDB04_ST +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_CONTROL_AUX_CTL_REG EQU CYREG_B1_UDB04_05_ACTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_CONTROL_CONTROL_REG EQU CYREG_B1_UDB04_05_CTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_CONTROL_COUNT_REG EQU CYREG_B1_UDB04_05_CTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_COUNT_CONTROL_REG EQU CYREG_B1_UDB04_05_CTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_COUNT_COUNT_REG EQU CYREG_B1_UDB04_05_CTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_MASK_MASK_REG EQU CYREG_B1_UDB04_05_MSK +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_MASK_PERIOD_REG EQU CYREG_B1_UDB04_05_MSK +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_PERIOD_MASK_REG EQU CYREG_B1_UDB04_05_MSK +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_PERIOD_PERIOD_REG EQU CYREG_B1_UDB04_05_MSK +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__7__MASK EQU 0x80 +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__7__POS EQU 7 +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__CONTROL_AUX_CTL_REG EQU CYREG_B1_UDB04_ACTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__CONTROL_REG EQU CYREG_B1_UDB04_CTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__CONTROL_ST_REG EQU CYREG_B1_UDB04_ST_CTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__COUNT_REG EQU CYREG_B1_UDB04_CTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__COUNT_ST_REG EQU CYREG_B1_UDB04_ST_CTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__MASK EQU 0x80 +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__MASK_CTL_AUX_CTL_REG EQU CYREG_B1_UDB04_MSK_ACTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__PERIOD_REG EQU CYREG_B1_UDB04_MSK +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__PER_CTL_AUX_CTL_REG EQU CYREG_B1_UDB04_MSK_ACTL +Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_A0_REG EQU CYREG_B1_UDB04_05_A0 +Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_A1_REG EQU CYREG_B1_UDB04_05_A1 +Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_D0_REG EQU CYREG_B1_UDB04_05_D0 +Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_D1_REG EQU CYREG_B1_UDB04_05_D1 +Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_DP_AUX_CTL_REG EQU CYREG_B1_UDB04_05_ACTL +Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_F0_REG EQU CYREG_B1_UDB04_05_F0 +Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_F1_REG EQU CYREG_B1_UDB04_05_F1 +Timer_1_TimerUDB_sT16_timerdp_u0__A0_A1_REG EQU CYREG_B1_UDB04_A0_A1 +Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG EQU CYREG_B1_UDB04_A0 +Timer_1_TimerUDB_sT16_timerdp_u0__A1_REG EQU CYREG_B1_UDB04_A1 +Timer_1_TimerUDB_sT16_timerdp_u0__D0_D1_REG EQU CYREG_B1_UDB04_D0_D1 +Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG EQU CYREG_B1_UDB04_D0 +Timer_1_TimerUDB_sT16_timerdp_u0__D1_REG EQU CYREG_B1_UDB04_D1 +Timer_1_TimerUDB_sT16_timerdp_u0__DP_AUX_CTL_REG EQU CYREG_B1_UDB04_ACTL +Timer_1_TimerUDB_sT16_timerdp_u0__F0_F1_REG EQU CYREG_B1_UDB04_F0_F1 +Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG EQU CYREG_B1_UDB04_F0 +Timer_1_TimerUDB_sT16_timerdp_u0__F1_REG EQU CYREG_B1_UDB04_F1 +Timer_1_TimerUDB_sT16_timerdp_u0__MSK_DP_AUX_CTL_REG EQU CYREG_B1_UDB04_MSK_ACTL +Timer_1_TimerUDB_sT16_timerdp_u0__PER_DP_AUX_CTL_REG EQU CYREG_B1_UDB04_MSK_ACTL +Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_A0_REG EQU CYREG_B1_UDB05_06_A0 +Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_A1_REG EQU CYREG_B1_UDB05_06_A1 +Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_D0_REG EQU CYREG_B1_UDB05_06_D0 +Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_D1_REG EQU CYREG_B1_UDB05_06_D1 +Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_DP_AUX_CTL_REG EQU CYREG_B1_UDB05_06_ACTL +Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_F0_REG EQU CYREG_B1_UDB05_06_F0 +Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_F1_REG EQU CYREG_B1_UDB05_06_F1 +Timer_1_TimerUDB_sT16_timerdp_u1__A0_A1_REG EQU CYREG_B1_UDB05_A0_A1 +Timer_1_TimerUDB_sT16_timerdp_u1__A0_REG EQU CYREG_B1_UDB05_A0 +Timer_1_TimerUDB_sT16_timerdp_u1__A1_REG EQU CYREG_B1_UDB05_A1 +Timer_1_TimerUDB_sT16_timerdp_u1__D0_D1_REG EQU CYREG_B1_UDB05_D0_D1 +Timer_1_TimerUDB_sT16_timerdp_u1__D0_REG EQU CYREG_B1_UDB05_D0 +Timer_1_TimerUDB_sT16_timerdp_u1__D1_REG EQU CYREG_B1_UDB05_D1 +Timer_1_TimerUDB_sT16_timerdp_u1__DP_AUX_CTL_REG EQU CYREG_B1_UDB05_ACTL +Timer_1_TimerUDB_sT16_timerdp_u1__F0_F1_REG EQU CYREG_B1_UDB05_F0_F1 +Timer_1_TimerUDB_sT16_timerdp_u1__F0_REG EQU CYREG_B1_UDB05_F0 +Timer_1_TimerUDB_sT16_timerdp_u1__F1_REG EQU CYREG_B1_UDB05_F1 + ; SPIM_IntClock SPIM_IntClock__CFG0 EQU CYREG_CLKDIST_DCFG0_CFG0 SPIM_IntClock__CFG1 EQU CYREG_CLKDIST_DCFG0_CFG1 @@ -15,27 +89,27 @@ SPIM_IntClock__PM_STBY_CFG EQU CYREG_PM_STBY_CFG2 SPIM_IntClock__PM_STBY_MSK EQU 0x01 ; UART_1_BUART -UART_1_BUART_sTX_TxShifter_u0__16BIT_A0_REG EQU CYREG_B0_UDB01_02_A0 -UART_1_BUART_sTX_TxShifter_u0__16BIT_A1_REG EQU CYREG_B0_UDB01_02_A1 -UART_1_BUART_sTX_TxShifter_u0__16BIT_D0_REG EQU CYREG_B0_UDB01_02_D0 -UART_1_BUART_sTX_TxShifter_u0__16BIT_D1_REG EQU CYREG_B0_UDB01_02_D1 -UART_1_BUART_sTX_TxShifter_u0__16BIT_DP_AUX_CTL_REG EQU CYREG_B0_UDB01_02_ACTL -UART_1_BUART_sTX_TxShifter_u0__16BIT_F0_REG EQU CYREG_B0_UDB01_02_F0 -UART_1_BUART_sTX_TxShifter_u0__16BIT_F1_REG EQU CYREG_B0_UDB01_02_F1 -UART_1_BUART_sTX_TxShifter_u0__A0_A1_REG EQU CYREG_B0_UDB01_A0_A1 -UART_1_BUART_sTX_TxShifter_u0__A0_REG EQU CYREG_B0_UDB01_A0 -UART_1_BUART_sTX_TxShifter_u0__A1_REG EQU CYREG_B0_UDB01_A1 -UART_1_BUART_sTX_TxShifter_u0__D0_D1_REG EQU CYREG_B0_UDB01_D0_D1 -UART_1_BUART_sTX_TxShifter_u0__D0_REG EQU CYREG_B0_UDB01_D0 -UART_1_BUART_sTX_TxShifter_u0__D1_REG EQU CYREG_B0_UDB01_D1 -UART_1_BUART_sTX_TxShifter_u0__DP_AUX_CTL_REG EQU CYREG_B0_UDB01_ACTL -UART_1_BUART_sTX_TxShifter_u0__F0_F1_REG EQU CYREG_B0_UDB01_F0_F1 -UART_1_BUART_sTX_TxShifter_u0__F0_REG EQU CYREG_B0_UDB01_F0 -UART_1_BUART_sTX_TxShifter_u0__F1_REG EQU CYREG_B0_UDB01_F1 +UART_1_BUART_sTX_TxShifter_u0__16BIT_A0_REG EQU CYREG_B0_UDB04_05_A0 +UART_1_BUART_sTX_TxShifter_u0__16BIT_A1_REG EQU CYREG_B0_UDB04_05_A1 +UART_1_BUART_sTX_TxShifter_u0__16BIT_D0_REG EQU CYREG_B0_UDB04_05_D0 +UART_1_BUART_sTX_TxShifter_u0__16BIT_D1_REG EQU CYREG_B0_UDB04_05_D1 +UART_1_BUART_sTX_TxShifter_u0__16BIT_DP_AUX_CTL_REG EQU CYREG_B0_UDB04_05_ACTL +UART_1_BUART_sTX_TxShifter_u0__16BIT_F0_REG EQU CYREG_B0_UDB04_05_F0 +UART_1_BUART_sTX_TxShifter_u0__16BIT_F1_REG EQU CYREG_B0_UDB04_05_F1 +UART_1_BUART_sTX_TxShifter_u0__A0_A1_REG EQU CYREG_B0_UDB04_A0_A1 +UART_1_BUART_sTX_TxShifter_u0__A0_REG EQU CYREG_B0_UDB04_A0 +UART_1_BUART_sTX_TxShifter_u0__A1_REG EQU CYREG_B0_UDB04_A1 +UART_1_BUART_sTX_TxShifter_u0__D0_D1_REG EQU CYREG_B0_UDB04_D0_D1 +UART_1_BUART_sTX_TxShifter_u0__D0_REG EQU CYREG_B0_UDB04_D0 +UART_1_BUART_sTX_TxShifter_u0__D1_REG EQU CYREG_B0_UDB04_D1 +UART_1_BUART_sTX_TxShifter_u0__DP_AUX_CTL_REG EQU CYREG_B0_UDB04_ACTL +UART_1_BUART_sTX_TxShifter_u0__F0_F1_REG EQU CYREG_B0_UDB04_F0_F1 +UART_1_BUART_sTX_TxShifter_u0__F0_REG EQU CYREG_B0_UDB04_F0 +UART_1_BUART_sTX_TxShifter_u0__F1_REG EQU CYREG_B0_UDB04_F1 UART_1_BUART_sTX_TxSts__0__MASK EQU 0x01 UART_1_BUART_sTX_TxSts__0__POS EQU 0 -UART_1_BUART_sTX_TxSts__16BIT_STATUS_AUX_CTL_REG EQU CYREG_B0_UDB02_03_ACTL -UART_1_BUART_sTX_TxSts__16BIT_STATUS_REG EQU CYREG_B0_UDB02_03_ST +UART_1_BUART_sTX_TxSts__16BIT_STATUS_AUX_CTL_REG EQU CYREG_B0_UDB04_05_ACTL +UART_1_BUART_sTX_TxSts__16BIT_STATUS_REG EQU CYREG_B0_UDB04_05_ST UART_1_BUART_sTX_TxSts__1__MASK EQU 0x02 UART_1_BUART_sTX_TxSts__1__POS EQU 1 UART_1_BUART_sTX_TxSts__2__MASK EQU 0x04 @@ -43,26 +117,26 @@ UART_1_BUART_sTX_TxSts__2__POS EQU 2 UART_1_BUART_sTX_TxSts__3__MASK EQU 0x08 UART_1_BUART_sTX_TxSts__3__POS EQU 3 UART_1_BUART_sTX_TxSts__MASK EQU 0x0F -UART_1_BUART_sTX_TxSts__MASK_REG EQU CYREG_B0_UDB02_MSK -UART_1_BUART_sTX_TxSts__STATUS_AUX_CTL_REG EQU CYREG_B0_UDB02_ACTL -UART_1_BUART_sTX_TxSts__STATUS_REG EQU CYREG_B0_UDB02_ST -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A0_REG EQU CYREG_B0_UDB00_01_A0 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A1_REG EQU CYREG_B0_UDB00_01_A1 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D0_REG EQU CYREG_B0_UDB00_01_D0 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D1_REG EQU CYREG_B0_UDB00_01_D1 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_DP_AUX_CTL_REG EQU CYREG_B0_UDB00_01_ACTL -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F0_REG EQU CYREG_B0_UDB00_01_F0 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F1_REG EQU CYREG_B0_UDB00_01_F1 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_A1_REG EQU CYREG_B0_UDB00_A0_A1 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_REG EQU CYREG_B0_UDB00_A0 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A1_REG EQU CYREG_B0_UDB00_A1 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_D1_REG EQU CYREG_B0_UDB00_D0_D1 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_REG EQU CYREG_B0_UDB00_D0 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D1_REG EQU CYREG_B0_UDB00_D1 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__DP_AUX_CTL_REG EQU CYREG_B0_UDB00_ACTL -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_F1_REG EQU CYREG_B0_UDB00_F0_F1 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_REG EQU CYREG_B0_UDB00_F0 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F1_REG EQU CYREG_B0_UDB00_F1 +UART_1_BUART_sTX_TxSts__MASK_REG EQU CYREG_B0_UDB04_MSK +UART_1_BUART_sTX_TxSts__STATUS_AUX_CTL_REG EQU CYREG_B0_UDB04_ACTL +UART_1_BUART_sTX_TxSts__STATUS_REG EQU CYREG_B0_UDB04_ST +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A0_REG EQU CYREG_B0_UDB05_06_A0 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A1_REG EQU CYREG_B0_UDB05_06_A1 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D0_REG EQU CYREG_B0_UDB05_06_D0 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D1_REG EQU CYREG_B0_UDB05_06_D1 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_DP_AUX_CTL_REG EQU CYREG_B0_UDB05_06_ACTL +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F0_REG EQU CYREG_B0_UDB05_06_F0 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F1_REG EQU CYREG_B0_UDB05_06_F1 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_A1_REG EQU CYREG_B0_UDB05_A0_A1 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_REG EQU CYREG_B0_UDB05_A0 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A1_REG EQU CYREG_B0_UDB05_A1 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_D1_REG EQU CYREG_B0_UDB05_D0_D1 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_REG EQU CYREG_B0_UDB05_D0 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D1_REG EQU CYREG_B0_UDB05_D1 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__DP_AUX_CTL_REG EQU CYREG_B0_UDB05_ACTL +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_F1_REG EQU CYREG_B0_UDB05_F0_F1 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_REG EQU CYREG_B0_UDB05_F0 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F1_REG EQU CYREG_B0_UDB05_F1 ; LCD_LCDPort LCD_LCDPort__0__MASK EQU 0x01 @@ -243,8 +317,8 @@ SPIM_BSPIM_BitCounter__COUNT_ST_REG EQU CYREG_B0_UDB03_ST_CTL SPIM_BSPIM_BitCounter__MASK_CTL_AUX_CTL_REG EQU CYREG_B0_UDB03_MSK_ACTL SPIM_BSPIM_BitCounter__PERIOD_REG EQU CYREG_B0_UDB03_MSK SPIM_BSPIM_BitCounter__PER_CTL_AUX_CTL_REG EQU CYREG_B0_UDB03_MSK_ACTL -SPIM_BSPIM_RxStsReg__16BIT_STATUS_AUX_CTL_REG EQU CYREG_B0_UDB00_01_ACTL -SPIM_BSPIM_RxStsReg__16BIT_STATUS_REG EQU CYREG_B0_UDB00_01_ST +SPIM_BSPIM_RxStsReg__16BIT_STATUS_AUX_CTL_REG EQU CYREG_B0_UDB02_03_ACTL +SPIM_BSPIM_RxStsReg__16BIT_STATUS_REG EQU CYREG_B0_UDB02_03_ST SPIM_BSPIM_RxStsReg__4__MASK EQU 0x10 SPIM_BSPIM_RxStsReg__4__POS EQU 4 SPIM_BSPIM_RxStsReg__5__MASK EQU 0x20 @@ -252,13 +326,13 @@ SPIM_BSPIM_RxStsReg__5__POS EQU 5 SPIM_BSPIM_RxStsReg__6__MASK EQU 0x40 SPIM_BSPIM_RxStsReg__6__POS EQU 6 SPIM_BSPIM_RxStsReg__MASK EQU 0x70 -SPIM_BSPIM_RxStsReg__MASK_REG EQU CYREG_B0_UDB00_MSK -SPIM_BSPIM_RxStsReg__STATUS_AUX_CTL_REG EQU CYREG_B0_UDB00_ACTL -SPIM_BSPIM_RxStsReg__STATUS_REG EQU CYREG_B0_UDB00_ST +SPIM_BSPIM_RxStsReg__MASK_REG EQU CYREG_B0_UDB02_MSK +SPIM_BSPIM_RxStsReg__STATUS_AUX_CTL_REG EQU CYREG_B0_UDB02_ACTL +SPIM_BSPIM_RxStsReg__STATUS_REG EQU CYREG_B0_UDB02_ST SPIM_BSPIM_TxStsReg__0__MASK EQU 0x01 SPIM_BSPIM_TxStsReg__0__POS EQU 0 -SPIM_BSPIM_TxStsReg__16BIT_STATUS_AUX_CTL_REG EQU CYREG_B0_UDB04_05_ACTL -SPIM_BSPIM_TxStsReg__16BIT_STATUS_REG EQU CYREG_B0_UDB04_05_ST +SPIM_BSPIM_TxStsReg__16BIT_STATUS_AUX_CTL_REG EQU CYREG_B0_UDB00_01_ACTL +SPIM_BSPIM_TxStsReg__16BIT_STATUS_REG EQU CYREG_B0_UDB00_01_ST SPIM_BSPIM_TxStsReg__1__MASK EQU 0x02 SPIM_BSPIM_TxStsReg__1__POS EQU 1 SPIM_BSPIM_TxStsReg__2__MASK EQU 0x04 @@ -268,9 +342,9 @@ SPIM_BSPIM_TxStsReg__3__POS EQU 3 SPIM_BSPIM_TxStsReg__4__MASK EQU 0x10 SPIM_BSPIM_TxStsReg__4__POS EQU 4 SPIM_BSPIM_TxStsReg__MASK EQU 0x1F -SPIM_BSPIM_TxStsReg__MASK_REG EQU CYREG_B0_UDB04_MSK -SPIM_BSPIM_TxStsReg__STATUS_AUX_CTL_REG EQU CYREG_B0_UDB04_ACTL -SPIM_BSPIM_TxStsReg__STATUS_REG EQU CYREG_B0_UDB04_ST +SPIM_BSPIM_TxStsReg__MASK_REG EQU CYREG_B0_UDB00_MSK +SPIM_BSPIM_TxStsReg__STATUS_AUX_CTL_REG EQU CYREG_B0_UDB00_ACTL +SPIM_BSPIM_TxStsReg__STATUS_REG EQU CYREG_B0_UDB00_ST SPIM_BSPIM_sR8_Dp_u0__16BIT_A0_REG EQU CYREG_B0_UDB03_04_A0 SPIM_BSPIM_sR8_Dp_u0__16BIT_A1_REG EQU CYREG_B0_UDB03_04_A1 SPIM_BSPIM_sR8_Dp_u0__16BIT_D0_REG EQU CYREG_B0_UDB03_04_D0 @@ -430,6 +504,38 @@ Pin_4__PS EQU CYREG_PRT3_PS Pin_4__SHIFT EQU 3 Pin_4__SLW EQU CYREG_PRT3_SLW +; Pin_5 +Pin_5__0__MASK EQU 0x10 +Pin_5__0__PC EQU CYREG_PRT3_PC4 +Pin_5__0__PORT EQU 3 +Pin_5__0__SHIFT EQU 4 +Pin_5__AG EQU CYREG_PRT3_AG +Pin_5__AMUX EQU CYREG_PRT3_AMUX +Pin_5__BIE EQU CYREG_PRT3_BIE +Pin_5__BIT_MASK EQU CYREG_PRT3_BIT_MASK +Pin_5__BYP EQU CYREG_PRT3_BYP +Pin_5__CTL EQU CYREG_PRT3_CTL +Pin_5__DM0 EQU CYREG_PRT3_DM0 +Pin_5__DM1 EQU CYREG_PRT3_DM1 +Pin_5__DM2 EQU CYREG_PRT3_DM2 +Pin_5__DR EQU CYREG_PRT3_DR +Pin_5__INP_DIS EQU CYREG_PRT3_INP_DIS +Pin_5__LCD_COM_SEG EQU CYREG_PRT3_LCD_COM_SEG +Pin_5__LCD_EN EQU CYREG_PRT3_LCD_EN +Pin_5__MASK EQU 0x10 +Pin_5__PORT EQU 3 +Pin_5__PRT EQU CYREG_PRT3_PRT +Pin_5__PRTDSI__CAPS_SEL EQU CYREG_PRT3_CAPS_SEL +Pin_5__PRTDSI__DBL_SYNC_IN EQU CYREG_PRT3_DBL_SYNC_IN +Pin_5__PRTDSI__OE_SEL0 EQU CYREG_PRT3_OE_SEL0 +Pin_5__PRTDSI__OE_SEL1 EQU CYREG_PRT3_OE_SEL1 +Pin_5__PRTDSI__OUT_SEL0 EQU CYREG_PRT3_OUT_SEL0 +Pin_5__PRTDSI__OUT_SEL1 EQU CYREG_PRT3_OUT_SEL1 +Pin_5__PRTDSI__SYNC_OUT EQU CYREG_PRT3_SYNC_OUT +Pin_5__PS EQU CYREG_PRT3_PS +Pin_5__SHIFT EQU 4 +Pin_5__SLW EQU CYREG_PRT3_SLW + ; Tx_1 Tx_1__0__MASK EQU 0x80 Tx_1__0__PC EQU CYREG_PRT3_PC7 @@ -465,26 +571,28 @@ Tx_1__SLW EQU CYREG_PRT3_SLW ; SS SS_Async_ctrl_reg__0__MASK EQU 0x01 SS_Async_ctrl_reg__0__POS EQU 0 -SS_Async_ctrl_reg__16BIT_CONTROL_AUX_CTL_REG EQU CYREG_B0_UDB05_06_ACTL -SS_Async_ctrl_reg__16BIT_CONTROL_CONTROL_REG EQU CYREG_B0_UDB05_06_CTL -SS_Async_ctrl_reg__16BIT_CONTROL_COUNT_REG EQU CYREG_B0_UDB05_06_CTL -SS_Async_ctrl_reg__16BIT_COUNT_CONTROL_REG EQU CYREG_B0_UDB05_06_CTL -SS_Async_ctrl_reg__16BIT_COUNT_COUNT_REG EQU CYREG_B0_UDB05_06_CTL -SS_Async_ctrl_reg__16BIT_MASK_MASK_REG EQU CYREG_B0_UDB05_06_MSK -SS_Async_ctrl_reg__16BIT_MASK_PERIOD_REG EQU CYREG_B0_UDB05_06_MSK -SS_Async_ctrl_reg__16BIT_PERIOD_MASK_REG EQU CYREG_B0_UDB05_06_MSK -SS_Async_ctrl_reg__16BIT_PERIOD_PERIOD_REG EQU CYREG_B0_UDB05_06_MSK +SS_Async_ctrl_reg__16BIT_CONTROL_AUX_CTL_REG EQU CYREG_B0_UDB01_02_ACTL +SS_Async_ctrl_reg__16BIT_CONTROL_CONTROL_REG EQU CYREG_B0_UDB01_02_CTL +SS_Async_ctrl_reg__16BIT_CONTROL_COUNT_REG EQU CYREG_B0_UDB01_02_CTL +SS_Async_ctrl_reg__16BIT_COUNT_CONTROL_REG EQU CYREG_B0_UDB01_02_CTL +SS_Async_ctrl_reg__16BIT_COUNT_COUNT_REG EQU CYREG_B0_UDB01_02_CTL +SS_Async_ctrl_reg__16BIT_MASK_MASK_REG EQU CYREG_B0_UDB01_02_MSK +SS_Async_ctrl_reg__16BIT_MASK_PERIOD_REG EQU CYREG_B0_UDB01_02_MSK +SS_Async_ctrl_reg__16BIT_PERIOD_MASK_REG EQU CYREG_B0_UDB01_02_MSK +SS_Async_ctrl_reg__16BIT_PERIOD_PERIOD_REG EQU CYREG_B0_UDB01_02_MSK SS_Async_ctrl_reg__1__MASK EQU 0x02 SS_Async_ctrl_reg__1__POS EQU 1 -SS_Async_ctrl_reg__CONTROL_AUX_CTL_REG EQU CYREG_B0_UDB05_ACTL -SS_Async_ctrl_reg__CONTROL_REG EQU CYREG_B0_UDB05_CTL -SS_Async_ctrl_reg__CONTROL_ST_REG EQU CYREG_B0_UDB05_ST_CTL -SS_Async_ctrl_reg__COUNT_REG EQU CYREG_B0_UDB05_CTL -SS_Async_ctrl_reg__COUNT_ST_REG EQU CYREG_B0_UDB05_ST_CTL -SS_Async_ctrl_reg__MASK EQU 0x03 -SS_Async_ctrl_reg__MASK_CTL_AUX_CTL_REG EQU CYREG_B0_UDB05_MSK_ACTL -SS_Async_ctrl_reg__PERIOD_REG EQU CYREG_B0_UDB05_MSK -SS_Async_ctrl_reg__PER_CTL_AUX_CTL_REG EQU CYREG_B0_UDB05_MSK_ACTL +SS_Async_ctrl_reg__2__MASK EQU 0x04 +SS_Async_ctrl_reg__2__POS EQU 2 +SS_Async_ctrl_reg__CONTROL_AUX_CTL_REG EQU CYREG_B0_UDB01_ACTL +SS_Async_ctrl_reg__CONTROL_REG EQU CYREG_B0_UDB01_CTL +SS_Async_ctrl_reg__CONTROL_ST_REG EQU CYREG_B0_UDB01_ST_CTL +SS_Async_ctrl_reg__COUNT_REG EQU CYREG_B0_UDB01_CTL +SS_Async_ctrl_reg__COUNT_ST_REG EQU CYREG_B0_UDB01_ST_CTL +SS_Async_ctrl_reg__MASK EQU 0x07 +SS_Async_ctrl_reg__MASK_CTL_AUX_CTL_REG EQU CYREG_B0_UDB01_MSK_ACTL +SS_Async_ctrl_reg__PERIOD_REG EQU CYREG_B0_UDB01_MSK +SS_Async_ctrl_reg__PER_CTL_AUX_CTL_REG EQU CYREG_B0_UDB01_MSK_ACTL ; Miscellaneous ; -- WARNING: define names containing LEOPARD or PANTHER are deprecated and will be removed in a future release @@ -494,16 +602,17 @@ CYDEV_CONFIGURATION_MODE_DMA EQU 2 CYDEV_CONFIG_FASTBOOT_ENABLED EQU 0 CYDEV_CHIP_REV_PANTHER_PRODUCTION EQU 1 CYDEV_CHIP_REVISION_5A_PRODUCTION EQU 1 -CYDEV_CHIP_MEMBER_5A EQU 2 +CYDEV_CHIP_MEMBER_5A EQU 3 CYDEV_CHIP_FAMILY_PSOC5 EQU 3 -CYDEV_CHIP_DIE_PANTHER EQU 2 +CYDEV_CHIP_DIE_PANTHER EQU 3 CYDEV_CHIP_DIE_EXPECT EQU CYDEV_CHIP_DIE_PANTHER BCLK__BUS_CLK__HZ EQU 24000000 BCLK__BUS_CLK__KHZ EQU 24000 BCLK__BUS_CLK__MHZ EQU 24 CYDEV_CHIP_DIE_ACTUAL EQU CYDEV_CHIP_DIE_EXPECT CYDEV_CHIP_DIE_LEOPARD EQU 1 -CYDEV_CHIP_DIE_PSOC5LP EQU 3 +CYDEV_CHIP_DIE_PSOC4A EQU 2 +CYDEV_CHIP_DIE_PSOC5LP EQU 4 CYDEV_CHIP_DIE_UNKNOWN EQU 0 CYDEV_CHIP_FAMILY_PSOC3 EQU 1 CYDEV_CHIP_FAMILY_PSOC4 EQU 2 @@ -511,13 +620,16 @@ CYDEV_CHIP_FAMILY_UNKNOWN EQU 0 CYDEV_CHIP_FAMILY_USED EQU CYDEV_CHIP_FAMILY_PSOC5 CYDEV_CHIP_JTAG_ID EQU 0x0E13C069 CYDEV_CHIP_MEMBER_3A EQU 1 -CYDEV_CHIP_MEMBER_5B EQU 3 +CYDEV_CHIP_MEMBER_4A EQU 2 +CYDEV_CHIP_MEMBER_5B EQU 4 CYDEV_CHIP_MEMBER_UNKNOWN EQU 0 CYDEV_CHIP_MEMBER_USED EQU CYDEV_CHIP_MEMBER_5A CYDEV_CHIP_REVISION_3A_ES1 EQU 0 CYDEV_CHIP_REVISION_3A_ES2 EQU 1 CYDEV_CHIP_REVISION_3A_ES3 EQU 3 CYDEV_CHIP_REVISION_3A_PRODUCTION EQU 3 +CYDEV_CHIP_REVISION_4A_ES0 EQU 17 +CYDEV_CHIP_REVISION_4A_PRODUCTION EQU 17 CYDEV_CHIP_REVISION_5A_ES0 EQU 0 CYDEV_CHIP_REVISION_5A_ES1 EQU 1 CYDEV_CHIP_REVISION_5B_ES0 EQU 0 @@ -530,6 +642,8 @@ CYDEV_CHIP_REV_LEOPARD_ES3 EQU 3 CYDEV_CHIP_REV_LEOPARD_PRODUCTION EQU 3 CYDEV_CHIP_REV_PANTHER_ES0 EQU 0 CYDEV_CHIP_REV_PANTHER_ES1 EQU 1 +CYDEV_CHIP_REV_PSOC4A_ES0 EQU 17 +CYDEV_CHIP_REV_PSOC4A_PRODUCTION EQU 17 CYDEV_CHIP_REV_PSOC5LP_ES0 EQU 0 CYDEV_CHIP_REV_PSOC5LP_PRODUCTION EQU 0 CYDEV_CONFIGURATION_COMPRESSED EQU 0 diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cypins.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cypins.h index fcb4129..ed01434 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cypins.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cypins.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: cypins.h -* Version 3.30 +* Version 3.40 * * Description: * This file contains the function prototypes and constants used for port/pin @@ -11,7 +11,7 @@ * System Reference Guide provided with PSoC Creator. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cytypes.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cytypes.h index 8fdb501..0187c1b 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cytypes.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cytypes.h @@ -1,6 +1,6 @@ /******************************************************************************* * FILENAME: cytypes.h -* Version 3.30 +* Version 3.40 * * Description: * CyTypes provides register access macros and approved types for use in @@ -17,7 +17,7 @@ * (i.e. a "uint8 *" shouldn't be passed to obtain a 16-bit register value) * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. @@ -83,7 +83,9 @@ typedef float float32; #if(!CY_PSOC3) - typedef double float64; + typedef double float64; + typedef long long int64; + typedef unsigned long long uint64; #endif /* (!CY_PSOC3) */ @@ -167,6 +169,8 @@ typedef char char8; #define CYSMALL small #define CYXDATA xdata #define XDATA xdata + + #define CY_NOINIT #else @@ -183,6 +187,13 @@ typedef char char8; #define CYSMALL #define CYXDATA #define XDATA + + #if defined(__ARMCC_VERSION) + #define CY_NOINIT __attribute__ ((section(".noinit"), zero_init)) + #elif defined (__GNUC__) + #define CY_NOINIT __attribute__ ((section(".noinit"))) + #endif /* (__ARMCC_VERSION) */ + #endif /* (CY_PSOC3) */ @@ -254,17 +265,17 @@ typedef volatile uint32 CYXDATA reg32; #define CY_SET_REG32(addr, value) cywrite32_nodpx((volatile void far *)(reg32 *)(addr), value) /* Access 8, 16, 24 and 32-bit registers, ABOVE THE FIRST 64K OF XDATA */ - #define CY_GET_XTND_REG8(addr) cyread8(addr) - #define CY_SET_XTND_REG8(addr, value) cywrite8(addr,value) + #define CY_GET_XTND_REG8(addr) cyread8((volatile void far *)(addr)) + #define CY_SET_XTND_REG8(addr, value) cywrite8((volatile void far *)(addr), value) - #define CY_GET_XTND_REG16(addr) cyread16(addr) - #define CY_SET_XTND_REG16(addr, value) cywrite16(addr,value) + #define CY_GET_XTND_REG16(addr) cyread16((volatile void far *)(addr)) + #define CY_SET_XTND_REG16(addr, value) cywrite16((volatile void far *)(addr), value) - #define CY_GET_XTND_REG24(addr) cyread24(addr) - #define CY_SET_XTND_REG24(addr, value) cywrite24(addr,value) + #define CY_GET_XTND_REG24(addr) cyread24((volatile void far *)(addr)) + #define CY_SET_XTND_REG24(addr, value) cywrite24((volatile void far *)(addr), value) - #define CY_GET_XTND_REG32(addr) cyread32(addr) - #define CY_SET_XTND_REG32(addr, value) cywrite32(addr,value) + #define CY_GET_XTND_REG32(addr) cyread32((volatile void far *)(addr)) + #define CY_SET_XTND_REG32(addr, value) cywrite32((volatile void far *)(addr), value) #else diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyutils.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyutils.c index b064c5e..784a00f 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyutils.c +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/cyutils.c @@ -1,12 +1,12 @@ /******************************************************************************* * FILENAME: cyutils.c -* Version 3.30 +* Version 3.40 * * Description: * CyUtils provides function to handle 24-bit value writes. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_miso_pin.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_miso_pin.c index 29341e2..57a4726 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_miso_pin.c +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_miso_pin.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: m_miso_pin.c -* Version 1.80 +* Version 1.90 * * Description: * This file contains API to enable firmware control of a Pins component. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_miso_pin.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_miso_pin.h index 273fac5..1b4b352 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_miso_pin.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_miso_pin.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: m_miso_pin.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines @@ -25,7 +25,7 @@ /* Check to see if required defines such as CY_PSOC5A are available */ /* They are defined starting with cy_boot v3.0 */ #if !defined (CY_PSOC5A) - #error Component cy_pins_v1_80 requires cy_boot v3.0 or later + #error Component cy_pins_v1_90 requires cy_boot v3.0 or later #endif /* (CY_PSOC5A) */ /* APIs are not generated for P15[7:6] */ diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_miso_pin_aliases.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_miso_pin_aliases.h index a2d4f29..c6c88c2 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_miso_pin_aliases.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_miso_pin_aliases.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: m_miso_pin.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_mosi_pin.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_mosi_pin.c index 775ddf9..6eee973 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_mosi_pin.c +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_mosi_pin.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: m_mosi_pin.c -* Version 1.80 +* Version 1.90 * * Description: * This file contains API to enable firmware control of a Pins component. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_mosi_pin.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_mosi_pin.h index 331acd5..7af1137 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_mosi_pin.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_mosi_pin.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: m_mosi_pin.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines @@ -25,7 +25,7 @@ /* Check to see if required defines such as CY_PSOC5A are available */ /* They are defined starting with cy_boot v3.0 */ #if !defined (CY_PSOC5A) - #error Component cy_pins_v1_80 requires cy_boot v3.0 or later + #error Component cy_pins_v1_90 requires cy_boot v3.0 or later #endif /* (CY_PSOC5A) */ /* APIs are not generated for P15[7:6] */ diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_mosi_pin_aliases.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_mosi_pin_aliases.h index 3f51ef6..1bab883 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_mosi_pin_aliases.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_mosi_pin_aliases.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: m_mosi_pin.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_sclk_pin.c b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_sclk_pin.c index 2fbcbe2..7e79e33 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_sclk_pin.c +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_sclk_pin.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: m_sclk_pin.c -* Version 1.80 +* Version 1.90 * * Description: * This file contains API to enable firmware control of a Pins component. diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_sclk_pin.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_sclk_pin.h index 2a29717..03edcc5 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_sclk_pin.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_sclk_pin.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: m_sclk_pin.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines @@ -25,7 +25,7 @@ /* Check to see if required defines such as CY_PSOC5A are available */ /* They are defined starting with cy_boot v3.0 */ #if !defined (CY_PSOC5A) - #error Component cy_pins_v1_80 requires cy_boot v3.0 or later + #error Component cy_pins_v1_90 requires cy_boot v3.0 or later #endif /* (CY_PSOC5A) */ /* APIs are not generated for P15[7:6] */ diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_sclk_pin_aliases.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_sclk_pin_aliases.h index 3530ec1..68472d6 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_sclk_pin_aliases.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/m_sclk_pin_aliases.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: m_sclk_pin.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/post_link.bat b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/post_link.bat index ec1b222..7c32528 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/post_link.bat +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/post_link.bat @@ -15,5 +15,5 @@ move "%~1\%~2\%~n3.hex" "%~1\%~2\%~n3.ihx" @IF %errorlevel% NEQ 0 EXIT /b %errorlevel% CD /D "C:\Keil\UV4" @IF %errorlevel% NEQ 0 EXIT /b %errorlevel% -IF NOT EXIST "C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.svd" rem "C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.sfr" +IF NOT EXIST "C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.svd" rem "C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.sfr" @IF %errorlevel% NEQ 0 EXIT /b %errorlevel% diff --git a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/project.h b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/project.h index 63c9121..7ac38be 100644 --- a/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/project.h +++ b/PSOC5_SPI_LSM303D.cydsn/Generated_Source/PSoC5/project.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: project.h - * PSoC Creator 2.2 Component Pack 5 + * PSoC Creator 2.2 Component Pack 6 * * Description: * This file is automatically generated by PSoC Creator and should not @@ -8,11 +8,12 @@ * * ******************************************************************************** - * Copyright 2008-2011, Cypress Semiconductor Corporation. All rights reserved. + * Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. ********************************************************************************/ + #include #include #include @@ -37,6 +38,9 @@ #include #include #include +#include +#include +#include #include #include #include @@ -51,3 +55,4 @@ #include /*[]*/ + diff --git a/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.cycdx b/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.cycdx index a249682..8bc505b 100644 --- a/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.cycdx +++ b/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.cycdx @@ -1,18 +1,66 @@ + + + + - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + @@ -22,24 +70,29 @@ - - - - - - + + + - - + + + + + + + + + + \ No newline at end of file diff --git a/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.cydwr b/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.cydwr index 1b872365ca58558a97109efce23da1916367ca77..dd301cd9656a57963d7d3a3e13a26a9c12602fb7 100644 GIT binary patch literal 30560 zcmeI5Uu+%OUB@TOhPG_Clu!zyrSjIZA*gkFeXs4MHL_rm5_>%Ku8E4`hdg(5`BaRkZ32gqNoq355Tf7WTh3~&-u-n z`OWy=n~CGtPUTp0@62z``OW#A-~Zn^bMx|hA5HwfHxI?DC%%684i}HU!RO&Sz|-uJ zc>cM^UpsV47chzut?16V zWI6d%a$2pfC+o@Z?c~s#dH}=8QLiOkHCavC$!M~cj3*;P(@MtlIik;HeXrmjiVZ$%N<`QHx1^ z1Eb}NjwR9F(Xpbxj#{PJTLNl*fcowFx{@sFrak=7o5RKPbvqHYP3Wt#Y*x(eik8cP zp-ZCuR`N;B@^kvTpz|BLx2ne;*VU%(UKWclB_B+N1iPW0*92P^bUDDDQQM6mFo?&8 zh3B|tARhFZNp7nBram{+_QPtms&gbfhP=>$WHVNJ7!qAhWJcP`W~=qc+mM5~2hr`Zn#xgWlb0U7#6UDv)} z(5kNepdf{)rx}-N_Cw*b;egW2)bY?U^+MOK%4S~;HhxV5G|yuJ%ynJkfj0CEbnMBm zi5eb5H*Q|mts7F$qes7r_Wt6w^ll+Xbl_2mmL5jkdQM&yUyhION;rr*vC+Hl-=pKg zoeX{B=vNC>k#xQ;Z`Q;kS7W~e>HH3f_m(7@1jB6|q(>v+jHrj$h$sjjfSqs4&SUu} zg0)}P=c=G9`fkg2G`9Q%PjAbQ;oDWye)tZFo;U3h&_}mrJ_)-?1<%QduS)?B1omMU z*urR~St==!WKd}!>79^i9S<=IvPz0fo?_*INu3khw?ZU8B8ly&?U)YA0b^?0(Y>+e z@>>K7(c`b>{(e(9EN;=z2;~U}u=ixT6gO%S`PO*9t_)Tku*_mOD8`UJ-8^uaW>19A z#&HfY)$na_Yn<=ZSIiiyIj7~%^&x$CcoryPnggY7Nc9{h)>FPm%?`c!?#)P~lKZb7?w7e?NvP=;b5SY7G1hSMp5C;-k zf?JH9!N{b$GIN-^6M|7QYH3&>3fJu*Ruj65IJI@Zt@~ga4ObXO0%odE2-KLasV=Mt zx+Fp5y8$iadK``xCTF5aU*>|t^(C-gkj!nU&M=hBhqEgh&t{HKa}NtBAxtP7DCUo6 zj&J9gX*L~3kTW(SAFm@H+d<@Gb>y8LMBb?*ZzPg+R`i*cc7Z(2ju-PbP}mz{9xX8E z>ebr8IcW*G6Bcamssy|h{6EnE6(UrR;-tk6EnSf{t_HQj_ENN5Qw!RR2Suai(m+MF z&cMcwOIU3^cdfutB$HA({DhW{K2K;qC=0iBKB3n8fI4hZjdwVtmLw7?Pw32|aux@Sy3s%< z9O|l#MMTIbbxdlrHaqxUO!Yllo}JY@9FU{#eHsrdK_?YBm1{>Ua$^=6+}O^TWel-a z)UctPyucPzi2Ejkjj|ZhB!TGB&E|Ik<=G0#b31|ZnF`8h zcLL>N1?AFCpnSf9atGq%G`n6wSz6?Kbby}Yw*tzVN)Y4{K3FzLXhk+?AtXT;%d2La zO*ydI=E_le95pVWbD$D2r}c?cnjNTwglrjkVQF(H567o zU>xZ!iJ&dOk*ZsIOX^N)-_qx#J|P_vNr0y`C3{6y&a_T%rje*p{-JI{3{QGXI&SMp z6m6^sO!`ZS*vhJu=U^IT3Pg3!OWaV`qcj2Mn19Mzw)juUp4BZ=IQAZ+W>k?7SoTp< z^tGZ4qHCKy_W|#El(;b>aDsvgGHIoWsBkNy#%g38ondUo)e_@kIU1&ga@>6v{I=~L zoMhGtFX&xdyhf`qj+hQYWjIE-Y^$Gem5h@d6j`O*V$0*q16yME0q=U0xEU$gur0k% z2*f;6!ZzyQ9+GM6wpbM;nB@w1hN(0svJa?ZrP5Uh;2krM#lYD?DbzuqSryx=OdS`y zipygQGHpkLCcPz8^SvJ!)dWZUjUNJ4rey$f;SV8m&A3#+O z60qsE%t?{Kc!UoyQrY^3Y{DaY(tdIe$(qi|awdfJBYTP`<3eo)wAL z^=GfzG~fk0YdB(EA@@19+SZ_deH%`i{a(P9Zv}amF4zWjMI+)R81_dqwpb(o`QDAM zg~h*m6@^&W{>&deoe5~*5p{fCfGh}GSROI8w#w+Y|$jm{xO^z{CokgkwFS!O|BG8 z((IpI*H1dQNBL3>?hFZ&FcbFHccnrN)LoNY-)&~`3~`ukN+2%56Iu+w88#T$Qn09I zZ&~ccVGzgQJ#A}E6i(jzaKk*Jr()@Nop3{cH)TaOn+&&yb$eB~2#ImZ44Gh&04t`a z5W)H-!zD!}d1d(quZSB5iu=H=d?>)ybcJ7x?uAuNn*tVkET^}{Ac7wDK#@cd1lW2u zK|>+AAJp(JNb66_lrK7>uj;|;?z)@=ghH|cT}&gCvBHY;!r77fSkO$GZKE+dpo?UO z)RueHPN0D*dravG<=FK@t%A0;FM_}aS4xN;_e!uvZ)^74B@7}i=t0+od#4K#Vu6fj zu^vur!pZn$gRl^BQkQXY+bLnzROf+CB&Z7-V%i@R3<)tJS>r%1n!{QS}+u8B*O~1nd^( zaDJbyz?bEz@zS`-uC91Fl#QcoCM|f0#YaBRsbNRor;?BBW-f>LxQK=Kx$T8q^tR}a z)tMLCbvlhWn79@ajT050a%a32w=hM}vt%RNgWF_HgX2E+t zPfP-Hd`-5DXG3V3z1xo)LczdBs11FuXe4Xl>@!6NTfWb6_Udp`gkKf`@d>ukA@4wV zc0(Au!W_dWMqSXU`?_%G>#ge(f7BE3{(%0LM!*9;8^-ax&XzUb!~pilII_3+uDmUa z_*@a!EMUw9f|;Myj6bF0qGbP!cN8cQTeW7T3UgA08L7yK&ZZ@AGdeTFhlw~TXh-d+ z*iGr~l-kg0R>lLjFq_Z8z~T*q@8Bx@;$uQe8i5%<-ZE@t{LTd9H>#lNRPs_jgEcJNT$I*swL586@>ZSL z^N6M8(PZEKyOp!4ZbPmcPO;UfV@*WOyh2Ts0xz0tfn&z)-4ji3D7{pQW<(Y#iG%f` zSz4Yn^P=hD+Z0W9C`{|Ym*a-Sh?G&;`9oIJB+VpFX~zLsueC95_bRy!?}_es1s$0HZki~Xgv!RWrfC1Fa$&slQIKlCh$=h2ci;c;Y1z8Ae|6-V8QWx+l)MZ zH8277soKw9>jSTF7>g4*Jf!ioCA_6$^YMyQ)HlXswe?dwWeQLYVjhGD?2^$R6@N~M zAM@hNq`oow(<0Z5K3nzSAt|Pf&rV13^+~}n2`D`G=z)MBBBUXW^7S4fa#S3}abeH# zc>KB-32RI{7lW;DWZ_Zivl`3=S@}8DUWo$ENUgUDg?_S3L0E))zLzm=nl-WZ_`Hbc z?)i$g(>wlpz7rlrJf81u*WMd?pKtki(2xHvsS1@YGvaU=(_m?fnFcn*P#q&xnUKy= z#hD45rW!}JWUzEkC;(l#L_nbjFdC=TMJ&ZrDi8wNHZ2u{DHb~uL_osrBUE2Oy%_zq7vYA&J9 zclf<5wl(9sEIK8ben_lr_o9XxMaJty#hWlR1ZH}m$eigTGWQx491jy=dFb6ug{UM? zL^Y#bXksrOL}??4;}i2Ox2<;bT3 zm!>OR`jMhhntj2krCCc$8$A491826vzuX7@OMT$y`@q|M;HHIJpIhotntev&uk2re z=ov}HwZOG#z6MUCP$V328Z~vW z1Xk+dS3RgvQlTKl$KglG=}}oU&p>o&4T%!#W%X+Azcu)Am0I*_Hayj`fK~mztp%Ke zC#=FR!p#dB1=T9V|DL;+zb!ksE5CI12<8YDl|MQaty`%%17!ul;E1x4W^;~B-kF_p zaBm<=-;og{g{H3jq?|+%C^>Oe0_%Sbj-WvR^qsx!ymmPc~%#e-e(-#NI)Ul+y5IPY^l7W($~IZ<%ath9dvS

+a+Itd?lUycQXd+7mU_5nsVBV= zOM|gA5`8MuB&2P^Qa_&EWT_V!&(cAuUdhtZb=@ON2@j)@_0r~9>ZjJT)Wh$GrR_c} zZIYdS=d!enItH?|zJ6DYmcQwy*0b(g4(?g!MZjyLmrieBeTmI$qlf#5(Bp5yI^TXb zwXx;q$7`dX2Orc^a4WU(%b_=c+d$SGQ3HLl%jXOxHC}n$Tm1i(R;S&m}Vaj z=Qbr?l-3;Fi;{NjxT=viw^EZX}Jb3MWbEZ87LZq0|_6C zc@gmN`w@W$ovHaL+)WYi0fP@D<^xkq)#}!yWL;SS8pyh>fyAML=lW?{_o%}T?xn|T z`(v)XXSIjl537$l{0|~#+;6P*hJ7om%VJQPeXCi4yk28dtU@t+R#jkDvl~?D#DU72 zPHFaE+kP~W%$!PCZS7TJ0F;cYL$OL+Db?TJ-m~PN6jH}z6)u-3|99t5mJG>bK>y!2 zHJDp=OmjpRD=aNt&Lkhxw9M&0Gg{P2(K-EH45jIl0m?G-X~9@@Jg4R7g@VpfTZCw= z5u%T(+RcXGMIG!HpUaU6fwFzAx$!Onrl-fyc>L2^uwzs4N3{BVGT;EVC`{+VU~LlA znG9z(ES4Aej@Cv9$*iY76*eh9t{o)2<B_%>7<5Bv0HYU7E#s&uULYLFBe(uk%a zH%DvFzZis!mwo!pNo5q1weGxa!bY9*GBGp3p9YW!K zMAX}XAzR%`XeBS$9aFW^=%?AHgTD~YEoywx!C!LlUnt-j+nF#nY%Bjo8KT$B#tzB; z^4~NJg*{ZOvcs%0N6VXLpYspVxwdi~*AbJKmy6qJ_LXpMV}7L%{5Sf*Ki>!bJAL54 z>)@r>rP&|!f&Wn-_!s-Y|D+H6OAcO&SDO77GaBt)?&Hl3{uf*E_ E4~3&ylmGw# literal 30321 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 jxy|rUZh{rc9rdqN&#L|%=%v}=-sokTyI7?gz3 diff --git a/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.cyfit b/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.cyfit index 65292095f6b0b1e9f4e6813a497006e06a0a8f64..f2b9d323f9da8212253d8b576a8ae899c3fc159f 100644 GIT binary patch literal 192850 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

Mo>d7yF{089z| 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%0Aq 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

nx#s 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�M9Cv}MBYSPGrzcc(KFE|m+KLk7g9}isoZI%PiD}mlDVzhy^mi{Pi!zsTN;YU%=;moiJAW+;}z+v+^)P+4} zp>GJW{<)ePBUdZbnQQD+E2{rW{5kVC$DN7yV9^y-} zePh}3Yx=@|*14H5C|~IyVeeTb2>xs-`m-UPx4nUI!_Dizz}Mi^NFTG>a}%!}e`$HL zF5>Xn9SpZ7*0cSb-ytHv1m6!Li@7BJseu>Ancw&|+c1u&>HFQ9IE5}bKRA>&{*3t5 zV)INMYe33Yn61sAZZ+YtNvV>2-b0!jA}Vg|5IduxK`=-|e4uQ4Vfz#6;~}@*bZ29p zNuV7lcmA^V7A?en@KPQk2>WaM-gRGMMzgx|`&pRS&`a;Ro~zZh^ovwVLQ z=Q(sgY*Kg4ywVMRwbuaGBVR9{61Y%}&6tl&&B&7ZHAa)4*{ESZBljMmoYwriU;Rpa z!x{~HigCpixVw?2V)!DyJApp$Fu5pW)etfzHC4Z-Fh{jur|5~{av8*;v+s9Z)Awg>Y`S=#8r? zr=(FjY)ZRhCZtd0vlx{xzj@ny^Tg8H7)o*-)Q!rlm`@9w zkBPRp8x7XHV>Rs56Vj+@vo_a#)$S_?dQ=-}VSKLikgHuDAz{;3IZDV^^NjUkfi~z? zYZUSqtMcobj#iGGj;693LM>p>e=C!c)>Oq4U!(6*l5%N5cjRmojp{DW=JQQ9sH7N7u1JALzgjE_IBUf4$r*m2#?|F7z70oD}XshXsQI1O22Yw@QASPPrDXZY?Cg> zGRHCyPLv1`_2?T#s}udRRGhZt_oyn*8b7usc3h!*dj(NM6n1WkmUvFjps%Dg37zjS zM<4EET?zfculUo!8I@m_kbrXh;pky2 zy##O$CofQ6bB=T|zFl6rTOwvB=TdY+HfsDip}7EE`$?T6RLTOh7?E_?>>4Sz&TFXA zo$=M=*%0od^^{(DS%PEjFWGfnnf1o91PsF-D&uc5>z&ZtdT6euOqZBCHEGi?StX>@ z^8=v_hNn#g86}LZSz0a++xzO1SmVnuO(`~HMKL5aMUlP?U9R|KPaRtrmr8!VL!8sU~tzm}oYsd0$|5mb(z=WBk|xcn7g;<%wAJxkx3r zlqOEbm(w%BAoCg20KLq0g=kGR_p(BCC#>)2dXJr>EgGlwgw$&It7|K{^(uxDwWh3@ zDxw#TrvvA6c#`L(?Cwee=Z(4kmvRT0+~p6|En8QS(CWOl{a*!St!@XV3U|AtPhrPs zlxE4!9-vjr__r&(;66 zmrbMdTKZpmw8&cTP)dgun}x6Vzt7%L^)gJoG6cB8{I0M<)Drl|+35VgzS5#-;oCv` zdOyzrUm?%=Ute*0kJm00@?sh9R?H#%7 z{og{g4C!|&vykt{sR|Y=p=@K`KD~1`><2J-wcIf*c)j(S*sCI&g4|DyN6$%u>PKa% z{#~bEv(6!%X?gO}XkIfwk}YEPiV+|>qaVExmOiLO`3x9@B`B|w@@tVDv6(7j&r^2% z`whmi8OA$HrLqmikdV-Ixq!w`=I!r~M7Es>`iCJRZ$wv|*!^YX^K^4o6=>^&o< zRCJP>QEK%a>qdXq^qCWAuz~Y`{$M+dMp#z}{3vD*JHty7T9(v5{_-nSdNsthfg$}K zu|SWksmC@zf)w5{YX1f=oH>rir!n(u{^YMhYy80j&VI`E5NVZxieXBUU;GixMCvP! zWP~J`;mkF9WUB4XsOukV;jb;LlXoyV#|}YWMjV3M#+QfyqvNY^pDoM=x0D^s=G=6O zJv8co#g7&6SdE0km*JxJ0Ub*fdtL)=eUx9VL#2J;VpYhki8ojeh`BzRAE8|$;>L9R ze;U9~xbwyJwrwy{A z4xY?w=QcrSwgJ2?qunUsUVMu3%AtIhA%9;}O!5yw7*Xzx5-#I{%hG~Z!Z>v`63=kg z99Ml_t|{1m?n;~?=CNQ>?DLMiD>gIj&vULGk|PeY>0%&@JV&n2h52lmY8ZJw;| zeFAes)88T`b8|B0s5nDjOp-;@LpmKWLviRP)=TSCE)5;U|E`VIu6fkP84;O9lJaM) znOWwUn5D0_e2#Hd-RCOx&PJy%0AklX$g(k^kOPCS?etsH#3&~^e))M}!VBmfA9mFU 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 Lq0uw&YX<%U5lllq diff --git a/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.cyprj b/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.cyprj index d8defc2..6b0e476 100644 --- a/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.cyprj +++ b/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.cyprj @@ -1090,14 +1090,14 @@ - + - + @@ -1106,7 +1106,7 @@ - + @@ -1115,7 +1115,7 @@ - + @@ -1225,6 +1225,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1822,9 +1861,9 @@ - - - + + + @@ -1846,7 +1885,7 @@ - + \ No newline at end of file diff --git a/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.cyprj.SB b/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.cyprj.SB new file mode 100644 index 0000000..3ef53c1 --- /dev/null +++ b/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.cyprj.SB @@ -0,0 +1,1300 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +.\TopDesign\TopDesign.cysch +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cyprimitive +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cystate +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90 +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\aliases.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.c +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cyprimitive +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cystate +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90 +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\aliases.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.c +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cyprimitive +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cystate +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90 +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\aliases.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.c +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.h +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\SPI_Master_v2_40.cysch +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\SPI_Master_v2_40.cysym +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\SPI_Master_v2_40.pdf +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\SPI_Master_v2_40.cystate +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40 +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\API\SPI_Master.c +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\API\SPI_Master.h +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\API\SPI_Master_PM.c +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\API\SPI_MasterINT.c +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\API\SPI_Master_PVT.h +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\Custom\Properties\Resources.Designer.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\Custom\cyadditional.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\Custom\cyspimcontrol.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\Custom\cyspimcontrol.Designer.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\Custom\cyspimcontroladv.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\Custom\cyspimcontroladv.Designer.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\Custom\cyspimcustomizer.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\Custom\cyspimparameters.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\Custom\Properties\Resources.resx +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\Custom\cyspimcontrol.resx +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\Custom\cyspimcontroladv.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\cy_clock_v2_0.cyprimitive +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\cy_clock_v2_0.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\cy_clock_v2_0.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\cy_clock_v2_0.cystate +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\API\clk.c +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\API\clk.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\Custom\custom.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_SPI_Master_v2_40\B_SPI_Master_v2_40.cysym +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_SPI_Master_v2_40\B_SPI_Master_v2_40.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.v +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\CharLCD_v1_90.cysch +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\CharLCD_v1_90.cysym +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\CharLCD_v1_90.pdf +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\API\BarGraph.c +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\API\CharLCD.c +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\API\CharLCD.h +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\API\CharLCD_PM.c +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\API\CustChars.c +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\Custom\cyapicustomizer.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\Custom\cycharlcdcontrol.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\Custom\cycharlcdcontrol.designer.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\Custom\cycustomcharacter.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\Custom\cycustomcharacter.designer.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\Custom\cycustomizer.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\Custom\cycharlcdcontrol.resx +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\Custom\cycustomcharacter.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cyprimitive +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cystate +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90 +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\aliases.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.c +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.h +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\UART_v2_30.cysch +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\UART_v2_30.cysym +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\UART_v2_30.pdf +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\UART_v2_30.cystate +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\UART_v2_30.cycdx +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30 +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\API\UART.c +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\API\UART.h +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\API\UART_PM.c +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\API\UARTINT.c +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\API\UART_BOOT.c +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\Custom\cyuartadvancedcontrol.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\Custom\cyuartadvancedcontrol.Designer.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\Custom\cyuartcontrol.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\Custom\cyuartcontrol.Designer.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\Custom\cyuartcustomizer.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\Custom\cyuartparameters.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\Custom\Resources.Designer.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\Custom\cyuartadvancedcontrol.resx +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\Custom\cyuartcontrol.resx +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\Custom\Resources.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\Custom\custom.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_UART_v2_30\B_UART_v2_30.cysym +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_UART_v2_30\B_UART_v2_30.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\cy_clock_v2_0.cyprimitive +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\cy_clock_v2_0.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\cy_clock_v2_0.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\cy_clock_v2_0.cystate +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\API\clk.c +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\API\clk.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cyprimitive +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cystate +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90 +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\aliases.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.c +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\demux_v1_10\demux_v1_10.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\demux_v1_10\demux_v1_10.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\demux_v1_10\demux_v1_10.cystate +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\demux_v1_10\demux_v1_10.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\demux_v1_10\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\CyControlReg_v1_70.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\CyControlReg_v1_70.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\CyControlReg_v1_70.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\CyControlReg_v1_70.cystate +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\CyControlReg_v1_70.cycdx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\CyControlReg_v1_70.cydmacap +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\API\CyControlReg.c +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\API\CyControlReg.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\Custom\ControlRegParameters.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\Custom\cybitfieldcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\Custom\cybitfieldcontrol.designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\Custom\Resources.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\Custom\cybitfieldcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\Custom\Resources.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cyprimitive +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cystate +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90 +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\aliases.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.c +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cyprimitive +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cystate +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90 +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\aliases.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.c +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cyprimitive +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cystate +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90 +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\aliases.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.c +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cyprimitive +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cystate +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90 +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\aliases.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.c +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cyprimitive +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cystate +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90 +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.Designer.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.resx +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\aliases.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.c +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.v +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Timer_v2_50.cycdx +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Timer_v2_50.cysym +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Timer_v2_50.pdf +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Timer_v2_50.cystate +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\API\Timer.c +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\API\Timer.h +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\API\Timer_PM.c +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Custom\cytimercontrol.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Custom\cytimercontrol.Designer.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Custom\CyTimerCustomizer.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Custom\TimerParameters.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Custom\Resources.Designer.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Custom\cytimercontrol.resx +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Custom\Resources.resx +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\PSoC5\Timer_v2_50.cysch +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50 +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\Custom\custom.cs +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_Timer_v2_50\B_Timer_v2_50.cysym +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_Timer_v2_50\B_Timer_v2_50.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\OneTerminal\OneTerminal.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\OneTerminal\OneTerminal.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\OneTerminal\OneTerminal.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.v +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\Custom\custom.cs +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\cy_clock_v2_0.cyprimitive +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\cy_clock_v2_0.cysym +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\cy_clock_v2_0.pdf +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\cy_clock_v2_0.cystate +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\API\clk.c +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\API\clk.h +${CyRoot}\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\Custom\custom.cs +.\PSOC5_SPI_LSM303D.cydwr +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\cm3gcc.ld +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\Cm3RealView.scat +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\Cm3Start.c +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\core_cm3.c +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\core_cm3.h +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\core_cm3_psoc5.h +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\CyBootAsmGnu.s +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\CyBootAsmRv.s +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\CyDmac.c +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\CyDmac.h +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\CyFlash.c +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\CyFlash.h +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\CyLib.c +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\CyLib.h +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\cypins.h +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\cyPm.c +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\cyPm.h +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\CySpc.c +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\CySpc.h +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\cytypes.h +${CyRoot}\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\cyutils.c + + +.\Generated_Source\PSoC5\cyfitter_cfg.h +.\Generated_Source\PSoC5\cyfitter_cfg.c +.\Generated_Source\PSoC5\config.hex +.\Generated_Source\PSoC5\protect.hex +.\Generated_Source\PSoC5\cydevice.h +.\Generated_Source\PSoC5\cydevicegnu.inc +.\Generated_Source\PSoC5\cydevicerv.inc +.\Generated_Source\PSoC5\cydevice_trm.h +.\Generated_Source\PSoC5\cydevicegnu_trm.inc +.\Generated_Source\PSoC5\cydevicerv_trm.inc +.\Generated_Source\PSoC5\cyfittergnu.inc +.\Generated_Source\PSoC5\cyfitterrv.inc +.\Generated_Source\PSoC5\cyfitter.h +.\Generated_Source\PSoC5\Clock.c +.\Generated_Source\PSoC5\Clock.h +.\Generated_Source\PSoC5\m_miso_pin_aliases.h +.\Generated_Source\PSoC5\m_miso_pin.c +.\Generated_Source\PSoC5\m_miso_pin.h +.\Generated_Source\PSoC5\m_mosi_pin_aliases.h +.\Generated_Source\PSoC5\m_mosi_pin.c +.\Generated_Source\PSoC5\m_mosi_pin.h +.\Generated_Source\PSoC5\m_sclk_pin_aliases.h +.\Generated_Source\PSoC5\m_sclk_pin.c +.\Generated_Source\PSoC5\m_sclk_pin.h +.\Generated_Source\PSoC5\SPIM.c +.\Generated_Source\PSoC5\SPIM.h +.\Generated_Source\PSoC5\SPIM_PM.c +.\Generated_Source\PSoC5\SPIM_INT.c +.\Generated_Source\PSoC5\SPIM_PVT.h +.\Generated_Source\PSoC5\LCD.c +.\Generated_Source\PSoC5\LCD.h +.\Generated_Source\PSoC5\LCD_PM.c +.\Generated_Source\PSoC5\m_ss_pin_aliases.h +.\Generated_Source\PSoC5\m_ss_pin.c +.\Generated_Source\PSoC5\m_ss_pin.h +.\Generated_Source\PSoC5\LCD_LCDPort_aliases.h +.\Generated_Source\PSoC5\LCD_LCDPort.c +.\Generated_Source\PSoC5\LCD_LCDPort.h +.\Generated_Source\PSoC5\cm3gcc.ld +.\Generated_Source\PSoC5\Cm3RealView.scat +.\Generated_Source\PSoC5\Cm3Start.c +.\Generated_Source\PSoC5\core_cm3_psoc5.h +.\Generated_Source\PSoC5\core_cm3.c +.\Generated_Source\PSoC5\core_cm3.h +.\Generated_Source\PSoC5\CyBootAsmGnu.s +.\Generated_Source\PSoC5\CyBootAsmRv.s +.\Generated_Source\PSoC5\CyDmac.c +.\Generated_Source\PSoC5\CyDmac.h +.\Generated_Source\PSoC5\CyFlash.c +.\Generated_Source\PSoC5\CyFlash.h +.\Generated_Source\PSoC5\CyLib.c +.\Generated_Source\PSoC5\CyLib.h +.\Generated_Source\PSoC5\cypins.h +.\Generated_Source\PSoC5\cyPm.c +.\Generated_Source\PSoC5\cyPm.h +.\Generated_Source\PSoC5\CySpc.c +.\Generated_Source\PSoC5\CySpc.h +.\Generated_Source\PSoC5\cytypes.h +.\Generated_Source\PSoC5\cyutils.c +.\Generated_Source\PSoC5\project.h +.\Generated_Source\PSoC5\SPIM_IntClock.c +.\Generated_Source\PSoC5\SPIM_IntClock.h +.\Generated_Source\PSoC5\UART_1.c +.\Generated_Source\PSoC5\UART_1.h +.\Generated_Source\PSoC5\UART_1_PM.c +.\Generated_Source\PSoC5\UART_1_INT.c +.\Generated_Source\PSoC5\UART_1_BOOT.c +.\Generated_Source\PSoC5\isr_1.c +.\Generated_Source\PSoC5\isr_1.h +.\Generated_Source\PSoC5\Clock_1.c +.\Generated_Source\PSoC5\Clock_1.h +.\Generated_Source\PSoC5\SlaveCtrlReg.c +.\Generated_Source\PSoC5\SlaveCtrlReg.h +.\Generated_Source\PSoC5\Pin_1_aliases.h +.\Generated_Source\PSoC5\Pin_1.c +.\Generated_Source\PSoC5\Pin_1.h +.\Generated_Source\PSoC5\Pin_2_aliases.h +.\Generated_Source\PSoC5\Pin_2.c +.\Generated_Source\PSoC5\Pin_2.h +.\Generated_Source\PSoC5\Pin_3_aliases.h +.\Generated_Source\PSoC5\Pin_3.c +.\Generated_Source\PSoC5\Pin_3.h +.\Generated_Source\PSoC5\Pin_4_aliases.h +.\Generated_Source\PSoC5\Pin_4.c +.\Generated_Source\PSoC5\Pin_4.h +.\Generated_Source\PSoC5\Pin_5_aliases.h +.\Generated_Source\PSoC5\Pin_5.c +.\Generated_Source\PSoC5\Pin_5.h +.\Generated_Source\PSoC5\SS.c +.\Generated_Source\PSoC5\SS.h +.\Generated_Source\PSoC5\Pin_6_aliases.h +.\Generated_Source\PSoC5\Pin_6.c +.\Generated_Source\PSoC5\Pin_6.h +.\Generated_Source\PSoC5\Clock_2.c +.\Generated_Source\PSoC5\Clock_2.h +.\Generated_Source\PSoC5\Timer_1.c +.\Generated_Source\PSoC5\Timer_1.h +.\Generated_Source\PSoC5\Timer_1_PM.c + + +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\ieee\work\stdlogic.vif +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\mod_genv.vif +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_SPI_Master_v2_40\B_SPI_Master_v2_40.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\cypress.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\cy_psoc3_inc.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_UART_v2_30\B_UART_v2_30.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\demux_v1_10\demux_v1_10.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\CyControlReg_v1_70.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_Timer_v2_50\B_Timer_v2_50.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\OneTerminal\OneTerminal.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\rtlpkg.vif +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\cy_psoc3.vif + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.rpt b/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.rpt index e1a5509..a4a22fe 100644 --- a/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.rpt +++ b/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.rpt @@ -1,16 +1,16 @@ -Loading plugins phase: Elapsed time ==> 0s.201ms -Initializing data phase: Elapsed time ==> 2s.741ms +Loading plugins phase: Elapsed time ==> 0s.206ms +Initializing data phase: Elapsed time ==> 3s.144ms -cydsfit arguments: -.fdsnotice -.fdswarpdepfile=warp_dependencies.txt -.fdselabdepfile=elab_dependencies.txt -.fdsbldfile=generated_files.txt -p C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -d CY8C5568AXI-060 -s C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\Generated_Source\PSoC5 -- -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE +cydsfit arguments: -.fdsnotice -.fdswarpdepfile=warp_dependencies.txt -.fdselabdepfile=elab_dependencies.txt -.fdsbldfile=generated_files.txt -p C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -d CY8C5568AXI-060 -s C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\Generated_Source\PSoC5 -- -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ADD: prj.M0245: information: PSoC 5LP provides many improvements over PSoC 5. Learn more about migrating to PSoC 5LP at www.cypress.com/go/PSoC5LP +ADD: prj.M0246: information: PSoC 5LP provides many improvements over PSoC 5. Learn more about migrating to PSoC 5LP at www.cypress.com/go/PSoC5LP * PSOC5_SPI_LSM303D () -Elaboration phase: Elapsed time ==> 2s.691ms +Elaboration phase: Elapsed time ==> 3s.174ms -HDL generation phase: Elapsed time ==> 0s.072ms +HDL generation phase: Elapsed time ==> 0s.115ms | | | | | | | @@ -28,23 +28,23 @@ HDL generation phase: Elapsed time ==> 0s.072ms ====================================================================== Compiling: PSOC5_SPI_LSM303D.v Program : C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\bin/warp.exe -Options : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 PSOC5_SPI_LSM303D.v -verilog +Options : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 PSOC5_SPI_LSM303D.v -verilog ====================================================================== ====================================================================== Compiling: PSOC5_SPI_LSM303D.v Program : C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\bin/warp.exe -Options : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 PSOC5_SPI_LSM303D.v -verilog +Options : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 PSOC5_SPI_LSM303D.v -verilog ====================================================================== ====================================================================== Compiling: PSOC5_SPI_LSM303D.v Program : vlogfe -Options : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 -verilog PSOC5_SPI_LSM303D.v +Options : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 -verilog PSOC5_SPI_LSM303D.v ====================================================================== vlogfe V6.3 IR 41: Verilog parser -Fri Mar 22 10:33:23 2013 +Thu Jul 25 16:48:52 2013 ====================================================================== @@ -54,7 +54,7 @@ Options : -yv2 -q10 PSOC5_SPI_LSM303D.v ====================================================================== vpp V6.3 IR 41: Verilog Pre-Processor -Fri Mar 22 10:33:23 2013 +Thu Jul 25 16:48:52 2013 Flattening file 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.v' Flattening file 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.v' @@ -67,6 +67,9 @@ Flattening file 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\wa Flattening file 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\CyControlReg_v1_70.v' Flattening file 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\cypress.v' Flattening file 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.v' +Flattening file 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_Timer_v2_50\B_Timer_v2_50.v' +Flattening file 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\cypress.v' +Flattening file 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cyprimitives\CyPrimitives.cylib\OneTerminal\OneTerminal.v' vpp: No errors. @@ -91,6 +94,8 @@ C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\conten C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_UART_v2_30\B_UART_v2_30.v (line 1503, col 106): Note: Substituting module 'cmp_vv_vv' for '<'. C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_UART_v2_30\B_UART_v2_30.v (line 1559, col 68): Note: Substituting module 'cmp_vv_vv' for '<'. C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_UART_v2_30\B_UART_v2_30.v (line 1560, col 68): Note: Substituting module 'cmp_vv_vv' for '<'. +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_Timer_v2_50\B_Timer_v2_50.v (line 368, col 46): Note: Substituting module 'cmp_vv_vv' for '='. +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_Timer_v2_50\B_Timer_v2_50.v (line 374, col 62): Note: Substituting module 'add_vv_vv' for '+'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\cy_psoc3pkg.vif'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\cy_psoc3.vif'. @@ -100,11 +105,11 @@ vlogfe: No errors. ====================================================================== Compiling: PSOC5_SPI_LSM303D.v Program : tovif -Options : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 -verilog PSOC5_SPI_LSM303D.v +Options : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 -verilog PSOC5_SPI_LSM303D.v ====================================================================== tovif V6.3 IR 41: High-level synthesis -Fri Mar 22 10:33:24 2013 +Thu Jul 25 16:48:53 2013 Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\std.vhd'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\cypress.vhd'. @@ -115,9 +120,9 @@ Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\c Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\mod_cnst.vif'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\mod_mthv.vif'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\mod_genv.vif'. -Linking 'C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\codegentemp\PSOC5_SPI_LSM303D.ctl'. +Linking 'C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\codegentemp\PSOC5_SPI_LSM303D.ctl'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.v'. -Linking 'C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\codegentemp\PSOC5_SPI_LSM303D.v'. +Linking 'C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\codegentemp\PSOC5_SPI_LSM303D.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_SPI_Master_v2_40\B_SPI_Master_v2_40.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\cypress.v'. @@ -126,6 +131,8 @@ Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\conte Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\demux_v1_10\demux_v1_10.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\CyControlReg_v1_70.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.v'. +Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_Timer_v2_50\B_Timer_v2_50.v'. +Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\OneTerminal\OneTerminal.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\cy_psoc3pkg.vif'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\cy_psoc3.vif'. @@ -135,11 +142,11 @@ tovif: No errors. ====================================================================== Compiling: PSOC5_SPI_LSM303D.v Program : topld -Options : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 -verilog PSOC5_SPI_LSM303D.v +Options : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 -verilog PSOC5_SPI_LSM303D.v ====================================================================== topld V6.3 IR 41: Synthesis and optimization -Fri Mar 22 10:33:24 2013 +Thu Jul 25 16:48:54 2013 Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\std.vhd'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\cypress.vhd'. @@ -150,9 +157,9 @@ Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\c Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\mod_cnst.vif'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\mod_mthv.vif'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\mod_genv.vif'. -Linking 'C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\codegentemp\PSOC5_SPI_LSM303D.ctl'. +Linking 'C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\codegentemp\PSOC5_SPI_LSM303D.ctl'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.v'. -Linking 'C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\codegentemp\PSOC5_SPI_LSM303D.v'. +Linking 'C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\codegentemp\PSOC5_SPI_LSM303D.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_SPI_Master_v2_40\B_SPI_Master_v2_40.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\cypress.v'. @@ -161,6 +168,8 @@ Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\conte Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\demux_v1_10\demux_v1_10.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\CyControlReg_v1_70.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.v'. +Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_Timer_v2_50\B_Timer_v2_50.v'. +Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\OneTerminal\OneTerminal.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\cy_psoc3pkg.vif'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\cy_psoc3.vif'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\lcpsoc3\stdlogic\cpsoc3.vif'. @@ -190,6 +199,12 @@ Detecting unused logic. \UART_1:BUART:reset_sr\ Net_258 Net_259 + \demux_1:tmp__demux_1_5_reg\ + \demux_1:tmp__demux_1_6_reg\ + \demux_1:tmp__demux_1_7_reg\ + Net_443 + Net_588 + Net_589 \SS:clk\ \SS:rst\ \SS:control_bus_7\ @@ -197,10 +212,24 @@ Detecting unused logic. \SS:control_bus_5\ \SS:control_bus_4\ \SS:control_bus_3\ - \SS:control_bus_2\ - - -Deleted 29 User equations/components. + \Timer_1:Net_260\ + Net_663 + Net_668 + \Timer_1:Net_53\ + \Timer_1:TimerUDB:ctrl_ten\ + \Timer_1:TimerUDB:ctrl_cmode_0\ + \Timer_1:TimerUDB:ctrl_tmode_1\ + \Timer_1:TimerUDB:ctrl_tmode_0\ + \Timer_1:TimerUDB:ctrl_ic_1\ + \Timer_1:TimerUDB:ctrl_ic_0\ + Net_667 + \Timer_1:TimerUDB:zeros_3\ + \Timer_1:TimerUDB:zeros_2\ + \Timer_1:Net_102\ + \Timer_1:Net_266\ + + +Deleted 49 User equations/components. Deleted 0 Synthesized equations/components. ------------------------------------------------------ @@ -238,8 +267,18 @@ Aliasing tmpOE__Pin_1_net_0 to tmpOE__m_miso_pin_net_0 Aliasing tmpOE__Pin_2_net_0 to tmpOE__m_miso_pin_net_0 Aliasing tmpOE__Pin_3_net_0 to tmpOE__m_miso_pin_net_0 Aliasing tmpOE__Pin_4_net_0 to tmpOE__m_miso_pin_net_0 +Aliasing tmpOE__Pin_5_net_0 to tmpOE__m_miso_pin_net_0 +Aliasing Net_12 to zero +Aliasing \Timer_1:TimerUDB:ctrl_cmode_1\ to zero +Aliasing \Timer_1:TimerUDB:trigger_enable\ to tmpOE__m_miso_pin_net_0 +Aliasing \Timer_1:TimerUDB:status_6\ to zero +Aliasing \Timer_1:TimerUDB:status_5\ to zero +Aliasing \Timer_1:TimerUDB:status_4\ to zero +Aliasing \Timer_1:TimerUDB:status_0\ to \Timer_1:TimerUDB:tc_i\ Aliasing \SPIM:BSPIM:dpcounter_one_reg\\D\ to \SPIM:BSPIM:tx_status_3\ Aliasing Net_256D to zero +Aliasing \Timer_1:TimerUDB:capture_last\\D\ to zero +Aliasing \Timer_1:TimerUDB:capture_out_reg_i\\D\ to \Timer_1:TimerUDB:capt_fifo_load_int\ Removing Lhs of wire one[7] = tmpOE__m_miso_pin_net_0[2] Removing Lhs of wire tmpOE__m_mosi_pin_net_0[10] = tmpOE__m_miso_pin_net_0[2] Removing Rhs of wire Net_30[11] = \SPIM:BSPIM:mosi_fin\[36] @@ -283,28 +322,55 @@ Removing Lhs of wire \UART_1:BUART:tx_status_4\[224] = zero[3] Removing Lhs of wire \UART_1:BUART:tx_status_1\[226] = \UART_1:BUART:tx_fifo_empty\[187] Removing Lhs of wire \UART_1:BUART:tx_status_3\[228] = \UART_1:BUART:tx_fifo_notfull\[186] Removing Lhs of wire tmpOE__Tx_1_net_0[236] = tmpOE__m_miso_pin_net_0[2] -Removing Rhs of wire mywire_1_1[242] = \SS:control_out_1\[266] -Removing Rhs of wire mywire_1_1[242] = \SS:control_1\[275] -Removing Rhs of wire mywire_1_0[243] = \SS:control_out_0\[267] -Removing Rhs of wire mywire_1_0[243] = \SS:control_0\[276] -Removing Rhs of wire Net_444[248] = \demux_1:tmp__demux_1_0_reg\[241] -Removing Rhs of wire Net_441[249] = \demux_1:tmp__demux_1_1_reg\[245] -Removing Rhs of wire Net_449[250] = \demux_1:tmp__demux_1_2_reg\[246] -Removing Rhs of wire Net_443[251] = \demux_1:tmp__demux_1_3_reg\[247] -Removing Lhs of wire tmpOE__Pin_1_net_0[278] = tmpOE__m_miso_pin_net_0[2] -Removing Lhs of wire tmpOE__Pin_2_net_0[285] = tmpOE__m_miso_pin_net_0[2] -Removing Lhs of wire tmpOE__Pin_3_net_0[292] = tmpOE__m_miso_pin_net_0[2] -Removing Lhs of wire tmpOE__Pin_4_net_0[299] = tmpOE__m_miso_pin_net_0[2] -Removing Lhs of wire \SPIM:BSPIM:dpcounter_one_reg\\D\[306] = \SPIM:BSPIM:dpcounter_one\[54] -Removing Lhs of wire \SPIM:BSPIM:so_send_reg\\D\[307] = \SPIM:BSPIM:so_send\[34] -Removing Lhs of wire \SPIM:BSPIM:mosi_reg\\D\[314] = \SPIM:BSPIM:mosi_pre_reg\[51] -Removing Lhs of wire \SPIM:BSPIM:mosi_from_dp_reg\\D\[316] = \SPIM:BSPIM:mosi_from_dp\[41] -Removing Lhs of wire \UART_1:BUART:reset_reg\\D\[320] = zero[3] -Removing Lhs of wire \UART_1:BUART:tx_bitclk\\D\[325] = \UART_1:BUART:tx_bitclk_enable_pre\[173] -Removing Lhs of wire Net_256D[326] = zero[3] +Removing Rhs of wire mywire_1_2[242] = \SS:control_out_2\[273] +Removing Rhs of wire mywire_1_2[242] = \SS:control_2\[282] +Removing Rhs of wire mywire_1_1[243] = \SS:control_out_1\[274] +Removing Rhs of wire mywire_1_1[243] = \SS:control_1\[283] +Removing Rhs of wire mywire_1_0[244] = \SS:control_out_0\[275] +Removing Rhs of wire mywire_1_0[244] = \SS:control_0\[284] +Removing Rhs of wire Net_590[253] = \demux_1:tmp__demux_1_0_reg\[241] +Removing Rhs of wire Net_591[254] = \demux_1:tmp__demux_1_1_reg\[246] +Removing Rhs of wire Net_592[255] = \demux_1:tmp__demux_1_2_reg\[247] +Removing Rhs of wire Net_594[256] = \demux_1:tmp__demux_1_3_reg\[248] +Removing Rhs of wire Net_596[257] = \demux_1:tmp__demux_1_4_reg\[249] +Removing Lhs of wire tmpOE__Pin_1_net_0[286] = tmpOE__m_miso_pin_net_0[2] +Removing Lhs of wire tmpOE__Pin_2_net_0[293] = tmpOE__m_miso_pin_net_0[2] +Removing Lhs of wire tmpOE__Pin_3_net_0[300] = tmpOE__m_miso_pin_net_0[2] +Removing Lhs of wire tmpOE__Pin_4_net_0[307] = tmpOE__m_miso_pin_net_0[2] +Removing Lhs of wire tmpOE__Pin_5_net_0[314] = tmpOE__m_miso_pin_net_0[2] +Removing Lhs of wire Net_12[320] = zero[3] +Removing Lhs of wire \Timer_1:TimerUDB:ctrl_enable\[338] = \Timer_1:TimerUDB:control_7\[330] +Removing Lhs of wire \Timer_1:TimerUDB:ctrl_cmode_1\[340] = zero[3] +Removing Rhs of wire \Timer_1:TimerUDB:timer_enable\[349] = \Timer_1:TimerUDB:runmode_enable\[361] +Removing Rhs of wire \Timer_1:TimerUDB:run_mode\[350] = \Timer_1:TimerUDB:hwEnable_reg\[351] +Removing Lhs of wire \Timer_1:TimerUDB:trigger_enable\[353] = tmpOE__m_miso_pin_net_0[2] +Removing Lhs of wire \Timer_1:TimerUDB:tc_i\[355] = \Timer_1:TimerUDB:status_tc\[352] +Removing Lhs of wire \Timer_1:TimerUDB:hwEnable\[357] = \Timer_1:TimerUDB:control_7\[330] +Removing Lhs of wire \Timer_1:TimerUDB:capt_fifo_load_int\[360] = \Timer_1:TimerUDB:capt_fifo_load\[348] +Removing Lhs of wire \Timer_1:TimerUDB:status_6\[364] = zero[3] +Removing Lhs of wire \Timer_1:TimerUDB:status_5\[365] = zero[3] +Removing Lhs of wire \Timer_1:TimerUDB:status_4\[366] = zero[3] +Removing Lhs of wire \Timer_1:TimerUDB:status_0\[367] = \Timer_1:TimerUDB:status_tc\[352] +Removing Lhs of wire \Timer_1:TimerUDB:status_1\[368] = \Timer_1:TimerUDB:capt_fifo_load\[348] +Removing Rhs of wire \Timer_1:TimerUDB:status_2\[369] = \Timer_1:TimerUDB:fifo_full\[370] +Removing Rhs of wire \Timer_1:TimerUDB:status_3\[371] = \Timer_1:TimerUDB:fifo_nempty\[372] +Removing Lhs of wire \Timer_1:TimerUDB:cs_addr_2\[374] = zero[3] +Removing Lhs of wire \Timer_1:TimerUDB:cs_addr_1\[375] = \Timer_1:TimerUDB:trig_reg\[363] +Removing Lhs of wire \Timer_1:TimerUDB:cs_addr_0\[376] = \Timer_1:TimerUDB:per_zero\[354] +Removing Lhs of wire \SPIM:BSPIM:dpcounter_one_reg\\D\[461] = \SPIM:BSPIM:dpcounter_one\[54] +Removing Lhs of wire \SPIM:BSPIM:so_send_reg\\D\[462] = \SPIM:BSPIM:so_send\[34] +Removing Lhs of wire \SPIM:BSPIM:mosi_reg\\D\[469] = \SPIM:BSPIM:mosi_pre_reg\[51] +Removing Lhs of wire \SPIM:BSPIM:mosi_from_dp_reg\\D\[471] = \SPIM:BSPIM:mosi_from_dp\[41] +Removing Lhs of wire \UART_1:BUART:reset_reg\\D\[475] = zero[3] +Removing Lhs of wire \UART_1:BUART:tx_bitclk\\D\[480] = \UART_1:BUART:tx_bitclk_enable_pre\[173] +Removing Lhs of wire Net_256D[481] = zero[3] +Removing Lhs of wire \Timer_1:TimerUDB:capture_last\\D\[485] = zero[3] +Removing Lhs of wire \Timer_1:TimerUDB:hwEnable_reg\\D\[486] = \Timer_1:TimerUDB:control_7\[330] +Removing Lhs of wire \Timer_1:TimerUDB:tc_reg_i\\D\[487] = \Timer_1:TimerUDB:status_tc\[352] +Removing Lhs of wire \Timer_1:TimerUDB:capture_out_reg_i\\D\[488] = \Timer_1:TimerUDB:capt_fifo_load\[348] ------------------------------------------------------ -Aliased 0 equations, 62 wires. +Aliased 0 equations, 89 wires. ------------------------------------------------------ ---------------------------------------------------------- @@ -332,17 +398,26 @@ Note: Expanding virtual equation for '\UART_1:BUART:tx_counter_tc\' (cost = 0): Note: Expanding virtual equation for 'Net_438' (cost = 0): Net_438 <= (not Net_439); -Note: Expanding virtual equation for 'Net_444' (cost = 3): -Net_444 <= ((not Net_439 and not mywire_1_1 and not mywire_1_0)); +Note: Expanding virtual equation for 'Net_590' (cost = 4): +Net_590 <= ((not Net_439 and not mywire_1_2 and not mywire_1_1 and not mywire_1_0)); + +Note: Expanding virtual equation for 'Net_591' (cost = 4): +Net_591 <= ((not Net_439 and not mywire_1_2 and not mywire_1_1 and mywire_1_0)); -Note: Expanding virtual equation for 'Net_441' (cost = 3): -Net_441 <= ((not Net_439 and not mywire_1_1 and mywire_1_0)); +Note: Expanding virtual equation for 'Net_592' (cost = 4): +Net_592 <= ((not Net_439 and not mywire_1_2 and not mywire_1_0 and mywire_1_1)); -Note: Expanding virtual equation for 'Net_449' (cost = 3): -Net_449 <= ((not Net_439 and not mywire_1_0 and mywire_1_1)); +Note: Expanding virtual equation for 'Net_594' (cost = 4): +Net_594 <= ((not Net_439 and not mywire_1_2 and mywire_1_1 and mywire_1_0)); -Note: Expanding virtual equation for 'Net_443' (cost = 3): -Net_443 <= ((not Net_439 and mywire_1_1 and mywire_1_0)); +Note: Expanding virtual equation for 'Net_596' (cost = 4): +Net_596 <= ((not Net_439 and not mywire_1_1 and not mywire_1_0 and mywire_1_2)); + +Note: Expanding virtual equation for '\Timer_1:TimerUDB:fifo_load_polarized\' (cost = 0): +\Timer_1:TimerUDB:fifo_load_polarized\ <= ('0') ; + +Note: Expanding virtual equation for '\Timer_1:TimerUDB:status_tc\' (cost = 3): +\Timer_1:TimerUDB:status_tc\ <= ((\Timer_1:TimerUDB:run_mode\ and \Timer_1:TimerUDB:per_zero\)); Substituting virtuals - pass 2: @@ -351,7 +426,7 @@ Substituting virtuals - pass 2: ---------------------------------------------------------- Circuit simplification results: - Expanded 10 signals. + Expanded 13 signals. Turned 0 signals into soft nodes. Maximum default expansion cost was set at 5. ---------------------------------------------------------- @@ -359,10 +434,13 @@ Circuit simplification results: ------------------------------------------------------ Alias Detection ------------------------------------------------------ -Removing Lhs of wire \UART_1:BUART:tx_ctrl_mark_last\\D\[327] = \UART_1:BUART:tx_ctrl_mark_last\[231] +Aliasing \Timer_1:TimerUDB:capt_fifo_load\ to zero +Removing Lhs of wire \Timer_1:TimerUDB:capt_fifo_load\[348] = zero[3] +Removing Lhs of wire \Timer_1:TimerUDB:trig_reg\[363] = \Timer_1:TimerUDB:timer_enable\[349] +Removing Lhs of wire \UART_1:BUART:tx_ctrl_mark_last\\D\[482] = \UART_1:BUART:tx_ctrl_mark_last\[231] ------------------------------------------------------ -Aliased 0 equations, 1 wires. +Aliased 0 equations, 3 wires. ------------------------------------------------------ ---------------------------------------------------------- @@ -390,21 +468,24 @@ topld: No errors. CYPRESS_DIR : C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp Warp Program : C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\bin/warp.exe -Warp Arguments : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 PSOC5_SPI_LSM303D.v -verilog +Warp Arguments : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 PSOC5_SPI_LSM303D.v -verilog -Warp synthesis phase: Elapsed time ==> 1s.794ms +Warp synthesis phase: Elapsed time ==> 2s.217ms -cyp3fit: V2.2.0.293, Family: PSoC3, Started at: Friday, 22 March 2013 10:33:25 -Options: -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -d CY8C5568AXI-060 PSOC5_SPI_LSM303D.v -verilog +cyp3fit: V2.2.0.572, Family: PSoC3, Started at: Thursday, 25 July 2013 16:48:55 +Options: -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -d CY8C5568AXI-060 PSOC5_SPI_LSM303D.v -verilog -Design parsing phase: Elapsed time ==> 0s.020ms +Design parsing phase: Elapsed time ==> 0s.025ms Converted constant MacroCell: Net_256 from registered to combinatorial + Converted constant MacroCell: \Timer_1:TimerUDB:capture_last\ from registered to combinatorial + Converted constant MacroCell: \Timer_1:TimerUDB:capture_out_reg_i\ from registered to combinatorial Converted constant MacroCell: \UART_1:BUART:reset_reg\ from registered to combinatorial +Assigning clock timer_clock to clock ILO because it is a pass-through Digital Clock 0: Automatic-assigning clock 'SPIM_IntClock'. Fanout=1, Signal=\SPIM:Net_276\ Digital Clock 1: Automatic-assigning clock 'Clock_1'. Fanout=1, Signal=Net_191 @@ -414,6 +495,9 @@ Removing unused cells resulting from optimization Removed unused cell/equation 'Net_256:macrocell' Removed unused cell/equation '\SPIM:BSPIM:mosi_reg\:macrocell' Removed unused cell/equation '\SPIM:BSPIM:so_send_reg\:macrocell' + Removed unused cell/equation '\Timer_1:TimerUDB:capture_last\:macrocell' + Removed unused cell/equation '\Timer_1:TimerUDB:capture_out_reg_i\:macrocell' + Removed unused cell/equation '\Timer_1:TimerUDB:tc_reg_i\:macrocell' Removed unused cell/equation '\SPIM:BSPIM:so_send\:macrocell' Done removing unused cells. @@ -421,6 +505,10 @@ Done removing unused cells. ClockIn: SPIM_IntClock was determined to be a global clock that is synchronous to BUS_CLK EnableIn: Constant 1 was determined to be synchronous to ClockIn ClockOut: SPIM_IntClock, EnableOut: Constant 1 + UDB Clk/Enable \Timer_1:TimerUDB:clock_enable_block\: with output requested to be synchronous + ClockIn: ILO was determined to be a routed clock that is asynchronous + EnableIn: Constant 1 was determined to be synchronous to ClockIn + ClockOut: BUS_CLK, EnableOut: ClockBlock_1k__SYNC:synccell.out UDB Clk/Enable \UART_1:BUART:ClkSync\: with output requested to be synchronous ClockIn: Clock_1 was determined to be a global clock that is synchronous to BUS_CLK EnableIn: Constant 1 was determined to be synchronous to ClockIn @@ -439,6 +527,8 @@ Removing unused cells resulting from optimization Removed unused cell/equation '\SPIM:BSPIM:state_0\\D\:macrocell' Removed unused cell/equation '\SPIM:BSPIM:state_1\\D\:macrocell' Removed unused cell/equation '\SPIM:BSPIM:state_2\\D\:macrocell' + Removed unused cell/equation '\Timer_1:TimerUDB:runmode_enable\\D\:macrocell' + Removed unused cell/equation '\Timer_1:TimerUDB:trig_disable\\D\:macrocell' Removed unused cell/equation '\UART_1:BUART:reset_reg\:macrocell' Removed unused cell/equation '\UART_1:BUART:tx_mark\\D\:macrocell' Removed unused cell/equation '\UART_1:BUART:tx_parity_bit\\D\:macrocell' @@ -653,6 +743,45 @@ Design Equations { } + Pin : Name = Pin_5(0) + Attributes: + In Group/Port: True + In Sync Option: AUTO + Out Sync Option: NOSYNC + Interrupt generated: False + Interrupt mode: NONE + Drive mode: RES_PULL_UP + VTrip: EITHER + Slew: FAST + Input Sync needed: False + Output Sync needed: False + SC shield enabled: False + POR State: ANY + LCD Mode: COMMON + Register Mode: RegComb + CaSense Mode: NEITHER + Treat as pin: True + Is OE Registered: False + Uses Analog: False + Can contain Digital: True + Is SIO: False + SIO Output Buf: NONREGULATED + SIO Input Buf: SINGLE_ENDED + SIO HiFreq: LOW + SIO Hyst: DISABLED + SIO Vtrip: MULTIPLIER_0_5 + SIO RefSel: VCC_IO + Required Capabilitites: DIGITAL, ROUTABLE + Initial Value: 1 + IO Voltage: 0 + PORT MAP ( + pa_out => Pin_5(0)__PA , + input => Net_585 , + pad => Pin_5(0)_PAD ); + Properties: + { + } + Pin : Name = Tx_1(0) Attributes: In Group/Port: True @@ -1102,42 +1231,42 @@ Design Equations Output = Net_30 (fanout=1) MacroCell: Name=Net_419, Mode=(Combinatorial) - Total # of inputs : 3 + Total # of inputs : 4 Total # of product terms : 1 Clock Enable: True Main Equation : 1 pterm !( - !Net_439 * !mywire_1_1 * !mywire_1_0 + !Net_439 * !mywire_1_2 * !mywire_1_1 * !mywire_1_0 ); Output = Net_419 (fanout=1) MacroCell: Name=Net_422, Mode=(Combinatorial) - Total # of inputs : 3 + Total # of inputs : 4 Total # of product terms : 1 Clock Enable: True Main Equation : 1 pterm !( - !Net_439 * !mywire_1_1 * mywire_1_0 + !Net_439 * !mywire_1_2 * !mywire_1_1 * mywire_1_0 ); Output = Net_422 (fanout=1) MacroCell: Name=Net_425, Mode=(Combinatorial) - Total # of inputs : 3 + Total # of inputs : 4 Total # of product terms : 1 Clock Enable: True Main Equation : 1 pterm !( - !Net_439 * mywire_1_1 * mywire_1_0 + !Net_439 * !mywire_1_2 * mywire_1_1 * mywire_1_0 ); Output = Net_425 (fanout=1) MacroCell: Name=Net_428, Mode=(Combinatorial) - Total # of inputs : 3 + Total # of inputs : 4 Total # of product terms : 1 Clock Enable: True Main Equation : 1 pterm !( - !Net_439 * mywire_1_1 * !mywire_1_0 + !Net_439 * !mywire_1_2 * mywire_1_1 * !mywire_1_0 ); Output = Net_428 (fanout=1) @@ -1156,7 +1285,7 @@ Design Equations + \SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_1\ * \SPIM:BSPIM:state_0\ * !Net_439 ); - Output = Net_439 (fanout=6) + Output = Net_439 (fanout=7) MacroCell: Name=Net_479, Mode=(D-Register) Total # of inputs : 4 @@ -1174,6 +1303,16 @@ Design Equations ); Output = Net_479 (fanout=2) + MacroCell: Name=Net_585, Mode=(Combinatorial) + Total # of inputs : 4 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + !( + !Net_439 * mywire_1_2 * !mywire_1_1 * !mywire_1_0 + ); + Output = Net_585 (fanout=1) + MacroCell: Name=\SPIM:BSPIM:cnt_enable\, Mode=(T-Register) Total # of inputs : 10 Total # of product terms : 4 @@ -1435,6 +1574,58 @@ Design Equations ); Output = \SPIM:BSPIM:tx_status_4\ (fanout=1) + MacroCell: Name=\Timer_1:TimerUDB:run_mode\, Mode=(D-Register) + Total # of inputs : 1 + Total # of product terms : 1 + List of special equations: + Clock = (ClockBlock_BUS_CLK) => Global + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + Main Equation : 1 pterm + ( + \Timer_1:TimerUDB:control_7\ + ); + Output = \Timer_1:TimerUDB:run_mode\ (fanout=3) + + MacroCell: Name=\Timer_1:TimerUDB:status_tc\, Mode=(Combinatorial) + Total # of inputs : 2 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + ( + \Timer_1:TimerUDB:run_mode\ * \Timer_1:TimerUDB:per_zero\ + ); + Output = \Timer_1:TimerUDB:status_tc\ (fanout=1) + + MacroCell: Name=\Timer_1:TimerUDB:timer_enable\, Mode=(D-Register) + Total # of inputs : 5 + Total # of product terms : 3 + List of special equations: + Clock = (ClockBlock_BUS_CLK) => Global + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + Main Equation : 3 pterms + ( + \Timer_1:TimerUDB:control_7\ * !\Timer_1:TimerUDB:timer_enable\ * + !\Timer_1:TimerUDB:trig_disable\ + + \Timer_1:TimerUDB:control_7\ * !\Timer_1:TimerUDB:run_mode\ * + !\Timer_1:TimerUDB:trig_disable\ + + \Timer_1:TimerUDB:control_7\ * !\Timer_1:TimerUDB:per_zero\ * + !\Timer_1:TimerUDB:trig_disable\ + ); + Output = \Timer_1:TimerUDB:timer_enable\ (fanout=4) + + MacroCell: Name=\Timer_1:TimerUDB:trig_disable\, Mode=(T-Register) + Total # of inputs : 4 + Total # of product terms : 1 + List of special equations: + Clock = (ClockBlock_BUS_CLK) => Global + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + Main Equation : 1 pterm + ( + \Timer_1:TimerUDB:timer_enable\ * \Timer_1:TimerUDB:run_mode\ * + \Timer_1:TimerUDB:per_zero\ * !\Timer_1:TimerUDB:trig_disable\ + ); + Output = \Timer_1:TimerUDB:trig_disable\ (fanout=2) + MacroCell: Name=\UART_1:BUART:counter_load_not\, Mode=(Combinatorial) Total # of inputs : 4 Total # of product terms : 2 @@ -1612,6 +1803,79 @@ Design Equations Clock Polarity: Active High Clock Enable: True + datapathcell: Name =\Timer_1:TimerUDB:sT16:timerdp:u0\ + PORT MAP ( + clock => ClockBlock_BUS_CLK , + cs_addr_1 => \Timer_1:TimerUDB:timer_enable\ , + cs_addr_0 => \Timer_1:TimerUDB:per_zero\ , + chain_out => \Timer_1:TimerUDB:sT16:timerdp:carry\ , + clk_en => ClockBlock_1k__SYNC_OUT ); + Properties: + { + a0_init = "00000000" + a1_init = "00000000" + ce0_sync = 1 + ce1_sync = 1 + cl0_sync = 1 + cl1_sync = 1 + cmsb_sync = 1 + co_msb_sync = 1 + cy_dpconfig = "0000000001000000000000000100000001000000010000000000000010000000000000001000000000000000100000000000000010000000000000001000000011111111000000001111111111111111000000000000000000000001000000000000000000011000" + d0_init = "00000000" + d1_init = "00000000" + f0_blk_sync = 1 + f0_bus_sync = 1 + f1_blk_sync = 1 + f1_bus_sync = 1 + ff0_sync = 1 + ff1_sync = 1 + ov_msb_sync = 1 + so_sync = 1 + z0_sync = 1 + z1_sync = 1 + } + Clock Polarity: Active High + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + Next in chain : \Timer_1:TimerUDB:sT16:timerdp:u1\ + + datapathcell: Name =\Timer_1:TimerUDB:sT16:timerdp:u1\ + PORT MAP ( + clock => ClockBlock_BUS_CLK , + cs_addr_1 => \Timer_1:TimerUDB:timer_enable\ , + cs_addr_0 => \Timer_1:TimerUDB:per_zero\ , + z0_comb => \Timer_1:TimerUDB:per_zero\ , + f0_bus_stat_comb => \Timer_1:TimerUDB:status_3\ , + f0_blk_stat_comb => \Timer_1:TimerUDB:status_2\ , + chain_in => \Timer_1:TimerUDB:sT16:timerdp:carry\ , + clk_en => ClockBlock_1k__SYNC_OUT ); + Properties: + { + a0_init = "00000000" + a1_init = "00000000" + ce0_sync = 1 + ce1_sync = 1 + cl0_sync = 1 + cl1_sync = 1 + cmsb_sync = 1 + co_msb_sync = 1 + cy_dpconfig = "0000000001000000000000000100000001000000010000000000000010000000000000001000000000000000100000000000000010000000000000001000000011111111000000001111111111111111100000110000000000000001000000110000000000011000" + d0_init = "00000000" + d1_init = "00000000" + f0_blk_sync = 1 + f0_bus_sync = 1 + f1_blk_sync = 1 + f1_bus_sync = 1 + ff0_sync = 1 + ff1_sync = 1 + ov_msb_sync = 1 + so_sync = 1 + z0_sync = 1 + z1_sync = 1 + } + Clock Polarity: Active High + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + Previous in chain : \Timer_1:TimerUDB:sT16:timerdp:u0\ + datapathcell: Name =\UART_1:BUART:sTX:TxShifter:u0\ PORT MAP ( clock => Net_191 , @@ -1721,6 +1985,22 @@ Design Equations Clock Polarity: Active High Clock Enable: True + statusicell: Name =\Timer_1:TimerUDB:nrstSts:stsreg\ + PORT MAP ( + clock => ClockBlock_BUS_CLK , + status_3 => \Timer_1:TimerUDB:status_3\ , + status_2 => \Timer_1:TimerUDB:status_2\ , + status_0 => \Timer_1:TimerUDB:status_tc\ , + clk_en => ClockBlock_1k__SYNC_OUT ); + Properties: + { + cy_force_order = 1 + cy_int_mask = "1111111" + cy_md_select = "0000011" + } + Clock Polarity: Active High + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + statusicell: Name =\UART_1:BUART:sTX:TxSts\ PORT MAP ( clock => Net_191 , @@ -1738,6 +2018,18 @@ Design Equations Clock Enable: True + + ------------------------------------------------------------ + Sync listing + ------------------------------------------------------------ + + synccell: Name =ClockBlock_1k__SYNC + PORT MAP ( + in => ClockBlock_1k , + out => ClockBlock_1k__SYNC_OUT , + clock => ClockBlock_BUS_CLK ); + Clock Polarity: Active High + Clock Enable: True @@ -1752,7 +2044,7 @@ Design Equations control_5 => \SS:control_5\ , control_4 => \SS:control_4\ , control_3 => \SS:control_3\ , - control_2 => \SS:control_2\ , + control_2 => mywire_1_2 , control_1 => mywire_1_1 , control_0 => mywire_1_0 ); Properties: @@ -1764,6 +2056,26 @@ Design Equations cy_init_value = "00000000" } Clock Enable: True + + controlcell: Name =\Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\ + PORT MAP ( + control_7 => \Timer_1:TimerUDB:control_7\ , + control_6 => \Timer_1:TimerUDB:control_6\ , + control_5 => \Timer_1:TimerUDB:control_5\ , + control_4 => \Timer_1:TimerUDB:control_4\ , + control_3 => \Timer_1:TimerUDB:control_3\ , + control_2 => \Timer_1:TimerUDB:control_2\ , + control_1 => \Timer_1:TimerUDB:control_1\ , + control_0 => \Timer_1:TimerUDB:control_0\ ); + Properties: + { + cy_ctrl_mode_0 = "00000000" + cy_ctrl_mode_1 = "00000000" + cy_ext_reset = 0 + cy_force_order = 1 + cy_init_value = "00000000" + } + Clock Enable: True @@ -1809,15 +2121,16 @@ Resource Type : Used : Free : Max : % Used ============================================================ Digital domain clock dividers : 2 : 6 : 8 : 25.00% Analog domain clock dividers : 0 : 4 : 4 : 0.00% -Pins : 18 : 52 : 70 : 25.71% -UDB Macrocells : 32 : 160 : 192 : 16.67% -UDB Unique Pterms : 67 : 317 : 384 : 17.45% -UDB Total Pterms : 74 : : : -UDB Datapath Cells : 3 : 21 : 24 : 12.50% -UDB Status Cells : 3 : 21 : 24 : 12.50% - StatusI Registers : 3 -UDB Control Cells : 2 : 22 : 24 : 8.33% - Control Registers : 1 +Pins : 19 : 51 : 70 : 27.14% +UDB Macrocells : 37 : 155 : 192 : 19.27% +UDB Unique Pterms : 74 : 310 : 384 : 19.27% +UDB Total Pterms : 81 : : : +UDB Datapath Cells : 5 : 19 : 24 : 20.83% +UDB Status Cells : 5 : 19 : 24 : 20.83% + StatusI Registers : 4 + Sync Cells : 1 (in 1 status cell) +UDB Control Cells : 3 : 21 : 24 : 12.50% + Control Registers : 2 Count7 Cells : 1 DMA Channels : 0 : 24 : 24 : 0.00% Interrupts : 0 : 32 : 32 : 0.00% @@ -1838,9 +2151,9 @@ EMIF Fixed Blocks : 0 : 1 : 1 : 0.00% LPF Fixed Blocks : 0 : 2 : 2 : 0.00% SAR Fixed Blocks : 0 : 2 : 2 : 0.00% -Technology Mapping: Elapsed time ==> 0s.099ms +Technology Mapping: Elapsed time ==> 0s.051ms Info: mpr.M0037: Unused pieces of the design have been optimized out. See the Tech mapping section of the report file for details. (App=cydsfit) -Tech mapping phase: Elapsed time ==> 0s.210ms +Tech mapping phase: Elapsed time ==> 0s.220ms Initial Analog Placement Results: @@ -1848,6 +2161,7 @@ IO_0@[IOP=(3)][IoId=(0)] : Pin_1(0) (fixed) IO_1@[IOP=(3)][IoId=(1)] : Pin_2(0) (fixed) IO_2@[IOP=(3)][IoId=(2)] : Pin_3(0) (fixed) IO_3@[IOP=(3)][IoId=(3)] : Pin_4(0) (fixed) +IO_4@[IOP=(3)][IoId=(4)] : Pin_5(0) (fixed) IO_7@[IOP=(3)][IoId=(7)] : Tx_1(0) (fixed) IO_0@[IOP=(2)][IoId=(0)] : \LCD:LCDPort(0)\ (fixed) IO_1@[IOP=(2)][IoId=(1)] : \LCD:LCDPort(1)\ (fixed) @@ -1859,10 +2173,10 @@ IO_6@[IOP=(2)][IoId=(6)] : \LCD:LCDPort(6)\ (fixed) IO_0@[IOP=(0)][IoId=(0)] : m_miso_pin(0) (fixed) IO_5@[IOP=(0)][IoId=(5)] : m_mosi_pin(0) (fixed) IO_6@[IOP=(0)][IoId=(6)] : m_sclk_pin(0) (fixed) -Analog Placement phase: Elapsed time ==> 0s.053ms +Analog Placement phase: Elapsed time ==> 0s.052ms -Analog Routing phase: Elapsed time ==> 0s.000ms +Analog Routing phase: Elapsed time ==> 0s.001ms ============ Analog Final Answer Routes ============ @@ -1877,7 +2191,7 @@ Dump of CyP35AnalogRoutingResultsDB IsVddaHalfUsedForComp = False IsVddaHalfUsedForSar0 = False IsVddaHalfUsedForSar1 = False -Analog Code Generation phase: Elapsed time ==> 0s.435ms +Analog Code Generation phase: Elapsed time ==> 0s.614ms @@ -1888,33 +2202,33 @@ PLD Packing Summary ------------------------------------------------------------ Resource Type : Used : Free : Max : % Used ==================================================== - PLDs : 11 : 37 : 48 : 22.92% + PLDs : 13 : 35 : 48 : 27.08% PLD Resource Type : Average/LAB ======================================= - Inputs : 7.82 - Pterms : 6.36 - Macrocells : 2.91 + Inputs : 7.46 + Pterms : 6.00 + Macrocells : 2.85 Packed PLD Contents not displayed at this verbose level. -PLD Packing: Elapsed time ==> 0s.001ms +PLD Packing: Elapsed time ==> 0s.003ms Initial Partitioning Summary not displayed at this verbose level. Final Partitioning Summary not displayed at this verbose level. -Partitioning: Elapsed time ==> 0s.043ms +Partitioning: Elapsed time ==> 0s.059ms Annealing: Elapsed time ==> 0s.002ms The seed used for moves was 114161200. -Inital cost was 248, final cost is 248 (0.00% improvement). +Inital cost was 261, final cost is 261 (0.00% improvement). @@ -1924,7 +2238,7 @@ Final Placement Summary Resource Type : Count : Avg Inputs : Avg Outputs ======================================================== - UDB : 6 : 10.50 : 5.33 + UDB : 8 : 9.13 : 4.63 @@ -1943,174 +2257,297 @@ UDB [UDB=(1,2)] is empty. UDB [UDB=(1,3)] is empty. UDB [UDB=(1,4)] is empty. UDB [UDB=(1,5)] is empty. -UDB [UDB=(2,0)] is empty. -UDB [UDB=(2,1)] is empty. -UDB [UDB=(2,2)] is empty. -UDB [UDB=(2,3)] contents: -LAB@[UDB=(2,3)][LB=0] #macrocells=3, #inputs=11, #pterms=8 +UDB [UDB=(2,0)] contents: +LAB@[UDB=(2,0)][LB=0] #macrocells=4, #inputs=5, #pterms=6 { - [McSlotId=0]: MacroCell: Name=\SPIM:BSPIM:cnt_enable\, Mode=(T-Register) @ [UDB=(2,3)][LB=0][MC=0] - Total # of inputs : 10 - Total # of product terms : 4 + [McSlotId=0]: MacroCell: Name=\Timer_1:TimerUDB:timer_enable\, Mode=(D-Register) @ [UDB=(2,0)][LB=0][MC=0] + Total # of inputs : 5 + Total # of product terms : 3 List of special equations: - Clock = (\SPIM:Net_276\) => Global - Clock Enable: True - Main Equation : 4 pterms + Clock = (ClockBlock_BUS_CLK) => Global + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + Main Equation : 3 pterms ( - !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * - !\SPIM:BSPIM:state_0\ * \SPIM:BSPIM:cnt_enable\ - + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * - \SPIM:BSPIM:state_0\ * !\SPIM:BSPIM:cnt_enable\ - + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_0\ * - !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * - !\SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * - \SPIM:BSPIM:count_0\ * \SPIM:BSPIM:is_spi_done\ * - \SPIM:BSPIM:cnt_enable\ - + \SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_0\ * - \SPIM:BSPIM:cnt_enable\ - ); - Output = \SPIM:BSPIM:cnt_enable\ (fanout=3) + \Timer_1:TimerUDB:control_7\ * !\Timer_1:TimerUDB:timer_enable\ * + !\Timer_1:TimerUDB:trig_disable\ + + \Timer_1:TimerUDB:control_7\ * !\Timer_1:TimerUDB:run_mode\ * + !\Timer_1:TimerUDB:trig_disable\ + + \Timer_1:TimerUDB:control_7\ * !\Timer_1:TimerUDB:per_zero\ * + !\Timer_1:TimerUDB:trig_disable\ + ); + Output = \Timer_1:TimerUDB:timer_enable\ (fanout=4) Properties : { } - [McSlotId=1]: MacroCell: Name=\SPIM:BSPIM:state_1\, Mode=(D-Register) @ [UDB=(2,3)][LB=0][MC=1] - Total # of inputs : 10 - Total # of product terms : 4 + [McSlotId=1]: MacroCell: Name=\Timer_1:TimerUDB:trig_disable\, Mode=(T-Register) @ [UDB=(2,0)][LB=0][MC=1] + Total # of inputs : 4 + Total # of product terms : 1 List of special equations: - Clock = (\SPIM:Net_276\) => Global - Clock Enable: True - Main Equation : 4 pterms - !( - !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * - !\SPIM:BSPIM:state_0\ - + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_0\ * - !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * - !\SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * - \SPIM:BSPIM:count_0\ * \SPIM:BSPIM:is_spi_done\ - + \SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_0\ - + \SPIM:BSPIM:state_1\ * \SPIM:BSPIM:state_0\ * - !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * - \SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * - !\SPIM:BSPIM:count_0\ * !\SPIM:BSPIM:tx_status_1\ + Clock = (ClockBlock_BUS_CLK) => Global + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + Main Equation : 1 pterm + ( + \Timer_1:TimerUDB:timer_enable\ * \Timer_1:TimerUDB:run_mode\ * + \Timer_1:TimerUDB:per_zero\ * !\Timer_1:TimerUDB:trig_disable\ ); - Output = \SPIM:BSPIM:state_1\ (fanout=14) + Output = \Timer_1:TimerUDB:trig_disable\ (fanout=2) Properties : { } - [McSlotId=2]: MacroCell: Name=\SPIM:BSPIM:tx_status_4\, Mode=(Combinatorial) @ [UDB=(2,3)][LB=0][MC=2] - Total # of inputs : 3 + [McSlotId=2]: MacroCell: Name=\Timer_1:TimerUDB:status_tc\, Mode=(Combinatorial) @ [UDB=(2,0)][LB=0][MC=2] + Total # of inputs : 2 Total # of product terms : 1 Clock Enable: True Main Equation : 1 pterm ( - !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * - !\SPIM:BSPIM:state_0\ + \Timer_1:TimerUDB:run_mode\ * \Timer_1:TimerUDB:per_zero\ ); - Output = \SPIM:BSPIM:tx_status_4\ (fanout=1) + Output = \Timer_1:TimerUDB:status_tc\ (fanout=1) Properties : { } - [McSlotId=3]: (empty) -} - -LAB@[UDB=(2,3)][LB=1] #macrocells=4, #inputs=10, #pterms=8 -{ - [McSlotId=0]: MacroCell: Name=\SPIM:BSPIM:load_cond\, Mode=(T-Register) @ [UDB=(2,3)][LB=1][MC=0] - Total # of inputs : 9 - Total # of product terms : 4 + [McSlotId=3]: MacroCell: Name=\Timer_1:TimerUDB:run_mode\, Mode=(D-Register) @ [UDB=(2,0)][LB=0][MC=3] + Total # of inputs : 1 + Total # of product terms : 1 List of special equations: - Clock = (\SPIM:Net_276\) => Global - Clock Enable: True - Main Equation : 4 pterms + Clock = (ClockBlock_BUS_CLK) => Global + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + Main Equation : 1 pterm ( - !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:count_4\ * - !\SPIM:BSPIM:count_3\ * !\SPIM:BSPIM:count_2\ * - !\SPIM:BSPIM:count_1\ * !\SPIM:BSPIM:count_0\ * - \SPIM:BSPIM:load_cond\ - + \SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * - !\SPIM:BSPIM:state_0\ * !\SPIM:BSPIM:load_cond\ - + \SPIM:BSPIM:state_1\ * !\SPIM:BSPIM:count_4\ * - !\SPIM:BSPIM:count_3\ * !\SPIM:BSPIM:count_2\ * - !\SPIM:BSPIM:count_1\ * !\SPIM:BSPIM:count_0\ * - \SPIM:BSPIM:load_cond\ - + \SPIM:BSPIM:state_0\ * !\SPIM:BSPIM:count_4\ * - !\SPIM:BSPIM:count_3\ * !\SPIM:BSPIM:count_2\ * - !\SPIM:BSPIM:count_1\ * !\SPIM:BSPIM:count_0\ * - \SPIM:BSPIM:load_cond\ + \Timer_1:TimerUDB:control_7\ ); - Output = \SPIM:BSPIM:load_cond\ (fanout=1) + Output = \Timer_1:TimerUDB:run_mode\ (fanout=3) Properties : { } +} - [McSlotId=1]: MacroCell: Name=Net_479, Mode=(D-Register) @ [UDB=(2,3)][LB=1][MC=1] - Total # of inputs : 4 - Total # of product terms : 3 - List of special equations: - Clock = (\SPIM:Net_276\) => Global - Clock Enable: True - Main Equation : 3 pterms - !( - !Net_479 * !\SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_0\ - + !\SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_1\ * - \SPIM:BSPIM:state_0\ - + \SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_1\ * - !\SPIM:BSPIM:state_0\ - ); - Output = Net_479 (fanout=2) +datapathcell: Name =\Timer_1:TimerUDB:sT16:timerdp:u0\ + PORT MAP ( + clock => ClockBlock_BUS_CLK , + cs_addr_1 => \Timer_1:TimerUDB:timer_enable\ , + cs_addr_0 => \Timer_1:TimerUDB:per_zero\ , + chain_out => \Timer_1:TimerUDB:sT16:timerdp:carry\ , + clk_en => ClockBlock_1k__SYNC_OUT ); + Properties: + { + a0_init = "00000000" + a1_init = "00000000" + ce0_sync = 1 + ce1_sync = 1 + cl0_sync = 1 + cl1_sync = 1 + cmsb_sync = 1 + co_msb_sync = 1 + cy_dpconfig = "0000000001000000000000000100000001000000010000000000000010000000000000001000000000000000100000000000000010000000000000001000000011111111000000001111111111111111000000000000000000000001000000000000000000011000" + d0_init = "00000000" + d1_init = "00000000" + f0_blk_sync = 1 + f0_bus_sync = 1 + f1_blk_sync = 1 + f1_bus_sync = 1 + ff0_sync = 1 + ff1_sync = 1 + ov_msb_sync = 1 + so_sync = 1 + z0_sync = 1 + z1_sync = 1 + } + Clock Polarity: Active High + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + Next in chain : \Timer_1:TimerUDB:sT16:timerdp:u1\ + +statusicell: Name =\Timer_1:TimerUDB:nrstSts:stsreg\ + PORT MAP ( + clock => ClockBlock_BUS_CLK , + status_3 => \Timer_1:TimerUDB:status_3\ , + status_2 => \Timer_1:TimerUDB:status_2\ , + status_0 => \Timer_1:TimerUDB:status_tc\ , + clk_en => ClockBlock_1k__SYNC_OUT ); + Properties: + { + cy_force_order = 1 + cy_int_mask = "1111111" + cy_md_select = "0000011" + } + Clock Polarity: Active High + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + +controlcell: Name =\Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\ + PORT MAP ( + control_7 => \Timer_1:TimerUDB:control_7\ , + control_6 => \Timer_1:TimerUDB:control_6\ , + control_5 => \Timer_1:TimerUDB:control_5\ , + control_4 => \Timer_1:TimerUDB:control_4\ , + control_3 => \Timer_1:TimerUDB:control_3\ , + control_2 => \Timer_1:TimerUDB:control_2\ , + control_1 => \Timer_1:TimerUDB:control_1\ , + control_0 => \Timer_1:TimerUDB:control_0\ ); + Properties: + { + cy_ctrl_mode_0 = "00000000" + cy_ctrl_mode_1 = "00000000" + cy_ext_reset = 0 + cy_force_order = 1 + cy_init_value = "00000000" + } + Clock Enable: True + +UDB [UDB=(2,1)] is empty. +UDB [UDB=(2,2)] is empty. +UDB [UDB=(2,3)] contents: +LAB@[UDB=(2,3)][LB=0] #macrocells=3, #inputs=11, #pterms=6 +{ + [McSlotId=0]: MacroCell: Name=\SPIM:BSPIM:rx_status_6\, Mode=(Combinatorial) @ [UDB=(2,3)][LB=0][MC=0] + Total # of inputs : 6 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + ( + !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * + !\SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * + \SPIM:BSPIM:count_0\ * \SPIM:BSPIM:rx_status_4\ + ); + Output = \SPIM:BSPIM:rx_status_6\ (fanout=1) Properties : { } - [McSlotId=2]: MacroCell: Name=\SPIM:BSPIM:load_rx_data\, Mode=(D-Register) @ [UDB=(2,3)][LB=1][MC=2] + [McSlotId=1]: MacroCell: Name=\UART_1:BUART:tx_state_0\, Mode=(T-Register) @ [UDB=(2,3)][LB=0][MC=1] + Total # of inputs : 5 + Total # of product terms : 4 + List of special equations: + Clock = (Net_191) => Global + Clock Enable: True + Main Equation : 4 pterms + ( + !\UART_1:BUART:tx_state_1\ * !\UART_1:BUART:tx_state_0\ * + !\UART_1:BUART:tx_fifo_empty\ * !\UART_1:BUART:tx_state_2\ + + !\UART_1:BUART:tx_state_1\ * !\UART_1:BUART:tx_state_0\ * + !\UART_1:BUART:tx_fifo_empty\ * \UART_1:BUART:tx_bitclk\ + + \UART_1:BUART:tx_state_1\ * \UART_1:BUART:tx_state_0\ * + \UART_1:BUART:tx_fifo_empty\ * \UART_1:BUART:tx_bitclk\ + + \UART_1:BUART:tx_state_0\ * !\UART_1:BUART:tx_state_2\ * + \UART_1:BUART:tx_bitclk\ + ); + Output = \UART_1:BUART:tx_state_0\ (fanout=7) + Properties : + { + } + + [McSlotId=2]: (empty) + [McSlotId=3]: MacroCell: Name=\UART_1:BUART:tx_status_0\, Mode=(Combinatorial) @ [UDB=(2,3)][LB=0][MC=3] Total # of inputs : 5 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + ( + !\UART_1:BUART:tx_state_1\ * !\UART_1:BUART:tx_state_0\ * + \UART_1:BUART:tx_fifo_empty\ * \UART_1:BUART:tx_state_2\ * + \UART_1:BUART:tx_bitclk\ + ); + Output = \UART_1:BUART:tx_status_0\ (fanout=1) + Properties : + { + } +} + +LAB@[UDB=(2,3)][LB=1] #macrocells=3, #inputs=2, #pterms=2 +{ + [McSlotId=0]: MacroCell: Name=\UART_1:BUART:tx_bitclk\, Mode=(D-Register) @ [UDB=(2,3)][LB=1][MC=0] + Total # of inputs : 1 Total # of product terms : 1 List of special equations: - Clock = (\SPIM:Net_276\) => Global + Clock = (Net_191) => Global Clock Enable: True Main Equation : 1 pterm ( - !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * - !\SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * - \SPIM:BSPIM:count_0\ + !\UART_1:BUART:tx_bitclk_dp\ ); - Output = \SPIM:BSPIM:load_rx_data\ (fanout=1) + Output = \UART_1:BUART:tx_bitclk\ (fanout=6) Properties : { } - [McSlotId=3]: MacroCell: Name=\SPIM:BSPIM:dpcounter_one\, Mode=(Combinatorial) @ [UDB=(2,3)][LB=1][MC=3] - Total # of inputs : 5 + [McSlotId=1]: MacroCell: Name=\UART_1:BUART:tx_bitclk_enable_pre\, Mode=(Combinatorial) @ [UDB=(2,3)][LB=1][MC=1] + Total # of inputs : 1 Total # of product terms : 1 Clock Enable: True Main Equation : 1 pterm ( - !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * - !\SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * - \SPIM:BSPIM:count_0\ + !\UART_1:BUART:tx_bitclk_dp\ ); - Output = \SPIM:BSPIM:dpcounter_one\ (fanout=1) + Output = \UART_1:BUART:tx_bitclk_enable_pre\ (fanout=1) + Properties : + { + } + + [McSlotId=2]: (empty) + [McSlotId=3]: MacroCell: Name=\UART_1:BUART:tx_status_2\, Mode=(Combinatorial) @ [UDB=(2,3)][LB=1][MC=3] + Total # of inputs : 1 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + ( + !\UART_1:BUART:tx_fifo_notfull\ + ); + Output = \UART_1:BUART:tx_status_2\ (fanout=1) Properties : { } } -statusicell: Name =\SPIM:BSPIM:TxStsReg\ +datapathcell: Name =\UART_1:BUART:sTX:TxShifter:u0\ PORT MAP ( - clock => \SPIM:Net_276\ , - status_4 => \SPIM:BSPIM:tx_status_4\ , - status_3 => \SPIM:BSPIM:dpcounter_one\ , - status_2 => \SPIM:BSPIM:tx_status_2\ , - status_1 => \SPIM:BSPIM:tx_status_1\ , - status_0 => \SPIM:BSPIM:tx_status_0\ ); + clock => Net_191 , + cs_addr_2 => \UART_1:BUART:tx_state_1\ , + cs_addr_1 => \UART_1:BUART:tx_state_0\ , + cs_addr_0 => \UART_1:BUART:tx_bitclk_enable_pre\ , + so_comb => \UART_1:BUART:tx_shift_out\ , + f0_bus_stat_comb => \UART_1:BUART:tx_fifo_notfull\ , + f0_blk_stat_comb => \UART_1:BUART:tx_fifo_empty\ ); + Properties: + { + a0_init = "00000000" + a1_init = "00000000" + ce0_sync = 1 + ce1_sync = 1 + cl0_sync = 1 + cl1_sync = 1 + cmsb_sync = 1 + co_msb_sync = 1 + cy_dpconfig = "0000000000000000000000000000000000000000000000000000000011000000000000000000000000000010010000000000000000000000000000000000000011111111000000001111111111111111000000000000000001000100111100000000000000001100" + d0_init = "00000000" + d1_init = "00000000" + f0_blk_sync = 1 + f0_bus_sync = 1 + f1_blk_sync = 1 + f1_bus_sync = 1 + ff0_sync = 1 + ff1_sync = 1 + ov_msb_sync = 1 + so_sync = 1 + z0_sync = 1 + z1_sync = 1 + } + Clock Polarity: Active High + Clock Enable: True + +statusicell: Name =\UART_1:BUART:sTX:TxSts\ + PORT MAP ( + clock => Net_191 , + status_3 => \UART_1:BUART:tx_fifo_notfull\ , + status_2 => \UART_1:BUART:tx_status_2\ , + status_1 => \UART_1:BUART:tx_fifo_empty\ , + status_0 => \UART_1:BUART:tx_status_0\ ); Properties: { cy_force_order = 1 - cy_int_mask = "0000000" - cy_md_select = "0001001" + cy_int_mask = "1111111" + cy_md_select = "0000001" } Clock Polarity: Active High Clock Enable: True @@ -2298,190 +2735,106 @@ count7cell: Name =\SPIM:BSPIM:BitCounter\ Clock Enable: True UDB [UDB=(2,5)] contents: -LAB@[UDB=(2,5)][LB=0] #macrocells=4, #inputs=12, #pterms=8 +LAB@[UDB=(2,5)][LB=0] #macrocells=3, #inputs=11, #pterms=8 { - [McSlotId=0]: MacroCell: Name=\SPIM:BSPIM:rx_status_6\, Mode=(Combinatorial) @ [UDB=(2,5)][LB=0][MC=0] - Total # of inputs : 6 - Total # of product terms : 1 + [McSlotId=0]: MacroCell: Name=\SPIM:BSPIM:cnt_enable\, Mode=(T-Register) @ [UDB=(2,5)][LB=0][MC=0] + Total # of inputs : 10 + Total # of product terms : 4 + List of special equations: + Clock = (\SPIM:Net_276\) => Global Clock Enable: True - Main Equation : 1 pterm + Main Equation : 4 pterms ( + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * + !\SPIM:BSPIM:state_0\ * \SPIM:BSPIM:cnt_enable\ + + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * + \SPIM:BSPIM:state_0\ * !\SPIM:BSPIM:cnt_enable\ + + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_0\ * !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * !\SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * - \SPIM:BSPIM:count_0\ * \SPIM:BSPIM:rx_status_4\ + \SPIM:BSPIM:count_0\ * \SPIM:BSPIM:is_spi_done\ * + \SPIM:BSPIM:cnt_enable\ + + \SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_0\ * + \SPIM:BSPIM:cnt_enable\ ); - Output = \SPIM:BSPIM:rx_status_6\ (fanout=1) + Output = \SPIM:BSPIM:cnt_enable\ (fanout=3) Properties : { } - [McSlotId=1]: MacroCell: Name=\UART_1:BUART:tx_state_0\, Mode=(T-Register) @ [UDB=(2,5)][LB=0][MC=1] - Total # of inputs : 5 + [McSlotId=1]: MacroCell: Name=\SPIM:BSPIM:state_1\, Mode=(D-Register) @ [UDB=(2,5)][LB=0][MC=1] + Total # of inputs : 10 Total # of product terms : 4 List of special equations: - Clock = (Net_191) => Global + Clock = (\SPIM:Net_276\) => Global Clock Enable: True Main Equation : 4 pterms - ( - !\UART_1:BUART:tx_state_1\ * !\UART_1:BUART:tx_state_0\ * - !\UART_1:BUART:tx_fifo_empty\ * !\UART_1:BUART:tx_state_2\ - + !\UART_1:BUART:tx_state_1\ * !\UART_1:BUART:tx_state_0\ * - !\UART_1:BUART:tx_fifo_empty\ * \UART_1:BUART:tx_bitclk\ - + \UART_1:BUART:tx_state_1\ * \UART_1:BUART:tx_state_0\ * - \UART_1:BUART:tx_fifo_empty\ * \UART_1:BUART:tx_bitclk\ - + \UART_1:BUART:tx_state_0\ * !\UART_1:BUART:tx_state_2\ * - \UART_1:BUART:tx_bitclk\ - ); - Output = \UART_1:BUART:tx_state_0\ (fanout=7) - Properties : - { - } - - [McSlotId=2]: MacroCell: Name=\UART_1:BUART:tx_state_1\, Mode=(T-Register) @ [UDB=(2,5)][LB=0][MC=2] - Total # of inputs : 5 - Total # of product terms : 3 - List of special equations: - Clock = (Net_191) => Global - Clock Enable: True - Main Equation : 3 pterms - ( - \UART_1:BUART:tx_state_1\ * \UART_1:BUART:tx_state_0\ * - \UART_1:BUART:tx_bitclk\ - + \UART_1:BUART:tx_state_1\ * !\UART_1:BUART:tx_state_2\ * - \UART_1:BUART:tx_bitclk\ * !\UART_1:BUART:tx_counter_dp\ - + \UART_1:BUART:tx_state_0\ * !\UART_1:BUART:tx_state_2\ * - \UART_1:BUART:tx_bitclk\ - ); - Output = \UART_1:BUART:tx_state_1\ (fanout=7) - Properties : - { - } - - [McSlotId=3]: MacroCell: Name=\UART_1:BUART:tx_status_0\, Mode=(Combinatorial) @ [UDB=(2,5)][LB=0][MC=3] - Total # of inputs : 5 - Total # of product terms : 1 - Clock Enable: True - Main Equation : 1 pterm - ( - !\UART_1:BUART:tx_state_1\ * !\UART_1:BUART:tx_state_0\ * - \UART_1:BUART:tx_fifo_empty\ * \UART_1:BUART:tx_state_2\ * - \UART_1:BUART:tx_bitclk\ - ); - Output = \UART_1:BUART:tx_status_0\ (fanout=1) - Properties : - { - } -} - -LAB@[UDB=(2,5)][LB=1] #macrocells=2, #inputs=1, #pterms=1 -{ - [McSlotId=0]: MacroCell: Name=\UART_1:BUART:tx_bitclk\, Mode=(D-Register) @ [UDB=(2,5)][LB=1][MC=0] - Total # of inputs : 1 - Total # of product terms : 1 - List of special equations: - Clock = (Net_191) => Global - Clock Enable: True - Main Equation : 1 pterm - ( - !\UART_1:BUART:tx_bitclk_dp\ + !( + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * + !\SPIM:BSPIM:state_0\ + + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_0\ * + !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * + !\SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * + \SPIM:BSPIM:count_0\ * \SPIM:BSPIM:is_spi_done\ + + \SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_0\ + + \SPIM:BSPIM:state_1\ * \SPIM:BSPIM:state_0\ * + !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * + \SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * + !\SPIM:BSPIM:count_0\ * !\SPIM:BSPIM:tx_status_1\ ); - Output = \UART_1:BUART:tx_bitclk\ (fanout=6) + Output = \SPIM:BSPIM:state_1\ (fanout=14) Properties : { } - [McSlotId=1]: MacroCell: Name=\UART_1:BUART:tx_bitclk_enable_pre\, Mode=(Combinatorial) @ [UDB=(2,5)][LB=1][MC=1] - Total # of inputs : 1 + [McSlotId=2]: MacroCell: Name=\SPIM:BSPIM:tx_status_4\, Mode=(Combinatorial) @ [UDB=(2,5)][LB=0][MC=2] + Total # of inputs : 3 Total # of product terms : 1 Clock Enable: True Main Equation : 1 pterm ( - !\UART_1:BUART:tx_bitclk_dp\ + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * + !\SPIM:BSPIM:state_0\ ); - Output = \UART_1:BUART:tx_bitclk_enable_pre\ (fanout=1) + Output = \SPIM:BSPIM:tx_status_4\ (fanout=1) Properties : { } - [McSlotId=2]: (empty) [McSlotId=3]: (empty) } -datapathcell: Name =\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\ - PORT MAP ( - clock => Net_191 , - cs_addr_0 => \UART_1:BUART:counter_load_not\ , - cl0_comb => \UART_1:BUART:tx_bitclk_dp\ , - cl1_comb => \UART_1:BUART:tx_counter_dp\ ); - Properties: - { - a0_init = "00000000" - a1_init = "00000000" - ce0_sync = 1 - ce1_sync = 1 - cl0_sync = 1 - cl1_sync = 1 - cmsb_sync = 1 - co_msb_sync = 1 - cy_dpconfig = "1010100001000000001000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011111111000000001111111100000111001000000100000000000101111100000000000000001000" - d0_init = "00000000" - d1_init = "00000000" - f0_blk_sync = 1 - f0_bus_sync = 1 - f1_blk_sync = 1 - f1_bus_sync = 1 - ff0_sync = 1 - ff1_sync = 1 - ov_msb_sync = 1 - so_sync = 1 - z0_sync = 1 - z1_sync = 1 - } - Clock Polarity: Active High - Clock Enable: True - -statusicell: Name =\SPIM:BSPIM:RxStsReg\ - PORT MAP ( - clock => \SPIM:Net_276\ , - status_6 => \SPIM:BSPIM:rx_status_6\ , - status_5 => \SPIM:BSPIM:rx_status_5\ , - status_4 => \SPIM:BSPIM:rx_status_4\ ); - Properties: - { - cy_force_order = 1 - cy_int_mask = "0000000" - cy_md_select = "1000000" - } - Clock Polarity: Active High - Clock Enable: True - -UDB [UDB=(3,0)] is empty. -UDB [UDB=(3,1)] is empty. -UDB [UDB=(3,2)] is empty. -UDB [UDB=(3,3)] contents: -LAB@[UDB=(3,3)][LB=0] #macrocells=4, #inputs=8, #pterms=7 +LAB@[UDB=(2,5)][LB=1] #macrocells=4, #inputs=10, #pterms=7 { - [McSlotId=0]: MacroCell: Name=Net_439, Mode=(T-Register) @ [UDB=(3,3)][LB=0][MC=0] - Total # of inputs : 4 - Total # of product terms : 3 + [McSlotId=0]: MacroCell: Name=\SPIM:BSPIM:load_cond\, Mode=(T-Register) @ [UDB=(2,5)][LB=1][MC=0] + Total # of inputs : 9 + Total # of product terms : 4 List of special equations: Clock = (\SPIM:Net_276\) => Global Clock Enable: True - Main Equation : 3 pterms + Main Equation : 4 pterms ( - !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * - !\SPIM:BSPIM:state_0\ * !Net_439 - + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * - \SPIM:BSPIM:state_0\ * Net_439 - + \SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_1\ * - \SPIM:BSPIM:state_0\ * !Net_439 + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:count_4\ * + !\SPIM:BSPIM:count_3\ * !\SPIM:BSPIM:count_2\ * + !\SPIM:BSPIM:count_1\ * !\SPIM:BSPIM:count_0\ * + \SPIM:BSPIM:load_cond\ + + \SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * + !\SPIM:BSPIM:state_0\ * !\SPIM:BSPIM:load_cond\ + + \SPIM:BSPIM:state_1\ * !\SPIM:BSPIM:count_4\ * + !\SPIM:BSPIM:count_3\ * !\SPIM:BSPIM:count_2\ * + !\SPIM:BSPIM:count_1\ * !\SPIM:BSPIM:count_0\ * + \SPIM:BSPIM:load_cond\ + + \SPIM:BSPIM:state_0\ * !\SPIM:BSPIM:count_4\ * + !\SPIM:BSPIM:count_3\ * !\SPIM:BSPIM:count_2\ * + !\SPIM:BSPIM:count_1\ * !\SPIM:BSPIM:count_0\ * + \SPIM:BSPIM:load_cond\ ); - Output = Net_439 (fanout=6) + Output = \SPIM:BSPIM:load_cond\ (fanout=1) Properties : { } - [McSlotId=1]: MacroCell: Name=\SPIM:BSPIM:ld_ident\, Mode=(T-Register) @ [UDB=(3,3)][LB=0][MC=1] + [McSlotId=1]: MacroCell: Name=\SPIM:BSPIM:ld_ident\, Mode=(T-Register) @ [UDB=(2,5)][LB=1][MC=1] Total # of inputs : 4 Total # of product terms : 2 List of special equations: @@ -2499,164 +2852,139 @@ LAB@[UDB=(3,3)][LB=0] #macrocells=4, #inputs=8, #pterms=7 { } - [McSlotId=2]: MacroCell: Name=Net_30, Mode=(Combinatorial) @ [UDB=(3,3)][LB=0][MC=2] - Total # of inputs : 2 + [McSlotId=2]: MacroCell: Name=\SPIM:BSPIM:load_rx_data\, Mode=(D-Register) @ [UDB=(2,5)][LB=1][MC=2] + Total # of inputs : 5 Total # of product terms : 1 + List of special equations: + Clock = (\SPIM:Net_276\) => Global Clock Enable: True Main Equation : 1 pterm ( - !Net_439 * \SPIM:BSPIM:mosi_hs_reg\ - ); - Output = Net_30 (fanout=1) - Properties : - { - } - - [McSlotId=3]: MacroCell: Name=Net_419, Mode=(Combinatorial) @ [UDB=(3,3)][LB=0][MC=3] - Total # of inputs : 3 - Total # of product terms : 1 - Clock Enable: True - Main Equation : 1 pterm - !( - !Net_439 * !mywire_1_1 * !mywire_1_0 - ); - Output = Net_419 (fanout=1) - Properties : - { - } -} - -LAB@[UDB=(3,3)][LB=1] #macrocells=3, #inputs=3, #pterms=3 -{ - [McSlotId=0]: MacroCell: Name=Net_422, Mode=(Combinatorial) @ [UDB=(3,3)][LB=1][MC=0] - Total # of inputs : 3 - Total # of product terms : 1 - Clock Enable: True - Main Equation : 1 pterm - !( - !Net_439 * !mywire_1_1 * mywire_1_0 - ); - Output = Net_422 (fanout=1) - Properties : - { - } - - [McSlotId=1]: MacroCell: Name=Net_425, Mode=(Combinatorial) @ [UDB=(3,3)][LB=1][MC=1] - Total # of inputs : 3 - Total # of product terms : 1 - Clock Enable: True - Main Equation : 1 pterm - !( - !Net_439 * mywire_1_1 * mywire_1_0 + !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * + !\SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * + \SPIM:BSPIM:count_0\ ); - Output = Net_425 (fanout=1) + Output = \SPIM:BSPIM:load_rx_data\ (fanout=1) Properties : { } - [McSlotId=2]: MacroCell: Name=Net_428, Mode=(Combinatorial) @ [UDB=(3,3)][LB=1][MC=2] - Total # of inputs : 3 + [McSlotId=3]: MacroCell: Name=\SPIM:BSPIM:dpcounter_one\, Mode=(Combinatorial) @ [UDB=(2,5)][LB=1][MC=3] + Total # of inputs : 5 Total # of product terms : 1 Clock Enable: True Main Equation : 1 pterm - !( - !Net_439 * mywire_1_1 * !mywire_1_0 + ( + !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * + !\SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * + \SPIM:BSPIM:count_0\ ); - Output = Net_428 (fanout=1) + Output = \SPIM:BSPIM:dpcounter_one\ (fanout=1) Properties : { } - - [McSlotId=3]: (empty) } -controlcell: Name =\SS:Async:ctrl_reg\ +statusicell: Name =\SPIM:BSPIM:TxStsReg\ PORT MAP ( - control_7 => \SS:control_7\ , - control_6 => \SS:control_6\ , - control_5 => \SS:control_5\ , - control_4 => \SS:control_4\ , - control_3 => \SS:control_3\ , - control_2 => \SS:control_2\ , - control_1 => mywire_1_1 , - control_0 => mywire_1_0 ); + clock => \SPIM:Net_276\ , + status_4 => \SPIM:BSPIM:tx_status_4\ , + status_3 => \SPIM:BSPIM:dpcounter_one\ , + status_2 => \SPIM:BSPIM:tx_status_2\ , + status_1 => \SPIM:BSPIM:tx_status_1\ , + status_0 => \SPIM:BSPIM:tx_status_0\ ); Properties: { - cy_ctrl_mode_0 = "00000000" - cy_ctrl_mode_1 = "00000000" - cy_ext_reset = 0 cy_force_order = 1 - cy_init_value = "00000000" + cy_int_mask = "0000000" + cy_md_select = "0001001" } + Clock Polarity: Active High Clock Enable: True -UDB [UDB=(3,4)] contents: -LAB@[UDB=(3,4)][LB=0] #macrocells=3, #inputs=3, #pterms=3 +UDB [UDB=(3,0)] contents: +LAB@[UDB=(3,0)][LB=1] #macrocells=1, #inputs=5, #pterms=3 { - [McSlotId=0]: MacroCell: Name=\SPIM:BSPIM:mosi_from_dp_reg\, Mode=(D-Register) @ [UDB=(3,4)][LB=0][MC=0] - Total # of inputs : 1 - Total # of product terms : 1 + [McSlotId=0]: MacroCell: Name=\UART_1:BUART:tx_state_1\, Mode=(T-Register) @ [UDB=(3,0)][LB=1][MC=0] + Total # of inputs : 5 + Total # of product terms : 3 List of special equations: - Clock = (\SPIM:Net_276\) => Global - Clock Enable: True - Main Equation : 1 pterm - ( - \SPIM:BSPIM:mosi_from_dp\ - ); - Output = \SPIM:BSPIM:mosi_from_dp_reg\ (fanout=1) - Properties : - { - } - - [McSlotId=1]: MacroCell: Name=Net_234, Mode=(Combinatorial) @ [UDB=(3,4)][LB=0][MC=1] - Total # of inputs : 1 - Total # of product terms : 1 - Clock Enable: True - Main Equation : 1 pterm - ( - !\UART_1:BUART:txn\ - ); - Output = Net_234 (fanout=1) - Properties : - { - } - - [McSlotId=2]: MacroCell: Name=\UART_1:BUART:tx_status_2\, Mode=(Combinatorial) @ [UDB=(3,4)][LB=0][MC=2] - Total # of inputs : 1 - Total # of product terms : 1 + Clock = (Net_191) => Global Clock Enable: True - Main Equation : 1 pterm + Main Equation : 3 pterms ( - !\UART_1:BUART:tx_fifo_notfull\ + \UART_1:BUART:tx_state_1\ * \UART_1:BUART:tx_state_0\ * + \UART_1:BUART:tx_bitclk\ + + \UART_1:BUART:tx_state_1\ * !\UART_1:BUART:tx_state_2\ * + \UART_1:BUART:tx_bitclk\ * !\UART_1:BUART:tx_counter_dp\ + + \UART_1:BUART:tx_state_0\ * !\UART_1:BUART:tx_state_2\ * + \UART_1:BUART:tx_bitclk\ ); - Output = \UART_1:BUART:tx_status_2\ (fanout=1) + Output = \UART_1:BUART:tx_state_1\ (fanout=7) Properties : { } + [McSlotId=1]: (empty) + [McSlotId=2]: (empty) [McSlotId=3]: (empty) } -statusicell: Name =\UART_1:BUART:sTX:TxSts\ +datapathcell: Name =\Timer_1:TimerUDB:sT16:timerdp:u1\ + PORT MAP ( + clock => ClockBlock_BUS_CLK , + cs_addr_1 => \Timer_1:TimerUDB:timer_enable\ , + cs_addr_0 => \Timer_1:TimerUDB:per_zero\ , + z0_comb => \Timer_1:TimerUDB:per_zero\ , + f0_bus_stat_comb => \Timer_1:TimerUDB:status_3\ , + f0_blk_stat_comb => \Timer_1:TimerUDB:status_2\ , + chain_in => \Timer_1:TimerUDB:sT16:timerdp:carry\ , + clk_en => ClockBlock_1k__SYNC_OUT ); + Properties: + { + a0_init = "00000000" + a1_init = "00000000" + ce0_sync = 1 + ce1_sync = 1 + cl0_sync = 1 + cl1_sync = 1 + cmsb_sync = 1 + co_msb_sync = 1 + cy_dpconfig = "0000000001000000000000000100000001000000010000000000000010000000000000001000000000000000100000000000000010000000000000001000000011111111000000001111111111111111100000110000000000000001000000110000000000011000" + d0_init = "00000000" + d1_init = "00000000" + f0_blk_sync = 1 + f0_bus_sync = 1 + f1_blk_sync = 1 + f1_bus_sync = 1 + ff0_sync = 1 + ff1_sync = 1 + ov_msb_sync = 1 + so_sync = 1 + z0_sync = 1 + z1_sync = 1 + } + Clock Polarity: Active High + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + Previous in chain : \Timer_1:TimerUDB:sT16:timerdp:u0\ + +synccell: Name =ClockBlock_1k__SYNC PORT MAP ( - clock => Net_191 , - status_3 => \UART_1:BUART:tx_fifo_notfull\ , - status_2 => \UART_1:BUART:tx_status_2\ , - status_1 => \UART_1:BUART:tx_fifo_empty\ , - status_0 => \UART_1:BUART:tx_status_0\ ); + in => ClockBlock_1k , + out => ClockBlock_1k__SYNC_OUT , + clock => ClockBlock_BUS_CLK ); Properties: { - cy_force_order = 1 - cy_int_mask = "1111111" - cy_md_select = "0000001" } Clock Polarity: Active High Clock Enable: True -UDB [UDB=(3,5)] contents: -LAB@[UDB=(3,5)][LB=0] #macrocells=2, #inputs=7, #pterms=8 +UDB [UDB=(3,1)] is empty. +UDB [UDB=(3,2)] is empty. +UDB [UDB=(3,3)] contents: +LAB@[UDB=(3,3)][LB=0] #macrocells=2, #inputs=7, #pterms=8 { - [McSlotId=0]: MacroCell: Name=\UART_1:BUART:txn\, Mode=(D-Register) @ [UDB=(3,5)][LB=0][MC=0] + [McSlotId=0]: MacroCell: Name=\UART_1:BUART:txn\, Mode=(D-Register) @ [UDB=(3,3)][LB=0][MC=0] Total # of inputs : 7 Total # of product terms : 5 List of special equations: @@ -2680,7 +3008,7 @@ LAB@[UDB=(3,5)][LB=0] #macrocells=2, #inputs=7, #pterms=8 { } - [McSlotId=1]: MacroCell: Name=\UART_1:BUART:tx_state_2\, Mode=(T-Register) @ [UDB=(3,5)][LB=0][MC=1] + [McSlotId=1]: MacroCell: Name=\UART_1:BUART:tx_state_2\, Mode=(T-Register) @ [UDB=(3,3)][LB=0][MC=1] Total # of inputs : 5 Total # of product terms : 3 List of special equations: @@ -2704,9 +3032,9 @@ LAB@[UDB=(3,5)][LB=0] #macrocells=2, #inputs=7, #pterms=8 [McSlotId=3]: (empty) } -LAB@[UDB=(3,5)][LB=1] #macrocells=2, #inputs=10, #pterms=8 +LAB@[UDB=(3,3)][LB=1] #macrocells=2, #inputs=10, #pterms=8 { - [McSlotId=0]: MacroCell: Name=\SPIM:BSPIM:mosi_hs_reg\, Mode=(D-Register) @ [UDB=(3,5)][LB=1][MC=0] + [McSlotId=0]: MacroCell: Name=\SPIM:BSPIM:mosi_hs_reg\, Mode=(D-Register) @ [UDB=(3,3)][LB=1][MC=0] Total # of inputs : 6 Total # of product terms : 6 List of special equations: @@ -2732,7 +3060,7 @@ LAB@[UDB=(3,5)][LB=1] #macrocells=2, #inputs=10, #pterms=8 { } - [McSlotId=1]: MacroCell: Name=\UART_1:BUART:counter_load_not\, Mode=(Combinatorial) @ [UDB=(3,5)][LB=1][MC=1] + [McSlotId=1]: MacroCell: Name=\UART_1:BUART:counter_load_not\, Mode=(Combinatorial) @ [UDB=(3,3)][LB=1][MC=1] Total # of inputs : 4 Total # of product terms : 2 Clock Enable: True @@ -2752,15 +3080,12 @@ LAB@[UDB=(3,5)][LB=1] #macrocells=2, #inputs=10, #pterms=8 [McSlotId=3]: (empty) } -datapathcell: Name =\UART_1:BUART:sTX:TxShifter:u0\ +datapathcell: Name =\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\ PORT MAP ( clock => Net_191 , - cs_addr_2 => \UART_1:BUART:tx_state_1\ , - cs_addr_1 => \UART_1:BUART:tx_state_0\ , - cs_addr_0 => \UART_1:BUART:tx_bitclk_enable_pre\ , - so_comb => \UART_1:BUART:tx_shift_out\ , - f0_bus_stat_comb => \UART_1:BUART:tx_fifo_notfull\ , - f0_blk_stat_comb => \UART_1:BUART:tx_fifo_empty\ ); + cs_addr_0 => \UART_1:BUART:counter_load_not\ , + cl0_comb => \UART_1:BUART:tx_bitclk_dp\ , + cl1_comb => \UART_1:BUART:tx_counter_dp\ ); Properties: { a0_init = "00000000" @@ -2771,7 +3096,7 @@ datapathcell: Name =\UART_1:BUART:sTX:TxShifter:u0\ cl1_sync = 1 cmsb_sync = 1 co_msb_sync = 1 - cy_dpconfig = "0000000000000000000000000000000000000000000000000000000011000000000000000000000000000010010000000000000000000000000000000000000011111111000000001111111111111111000000000000000001000100111100000000000000001100" + cy_dpconfig = "1010100001000000001000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011111111000000001111111100000111001000000100000000000101111100000000000000001000" d0_init = "00000000" d1_init = "00000000" f0_blk_sync = 1 @@ -2788,6 +3113,200 @@ datapathcell: Name =\UART_1:BUART:sTX:TxShifter:u0\ Clock Polarity: Active High Clock Enable: True +UDB [UDB=(3,4)] contents: +LAB@[UDB=(3,4)][LB=0] #macrocells=2, #inputs=2, #pterms=2 +{ + [McSlotId=0]: MacroCell: Name=\SPIM:BSPIM:mosi_from_dp_reg\, Mode=(D-Register) @ [UDB=(3,4)][LB=0][MC=0] + Total # of inputs : 1 + Total # of product terms : 1 + List of special equations: + Clock = (\SPIM:Net_276\) => Global + Clock Enable: True + Main Equation : 1 pterm + ( + \SPIM:BSPIM:mosi_from_dp\ + ); + Output = \SPIM:BSPIM:mosi_from_dp_reg\ (fanout=1) + Properties : + { + } + + [McSlotId=1]: (empty) + [McSlotId=2]: MacroCell: Name=Net_234, Mode=(Combinatorial) @ [UDB=(3,4)][LB=0][MC=2] + Total # of inputs : 1 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + ( + !\UART_1:BUART:txn\ + ); + Output = Net_234 (fanout=1) + Properties : + { + } + + [McSlotId=3]: (empty) +} + +statusicell: Name =\SPIM:BSPIM:RxStsReg\ + PORT MAP ( + clock => \SPIM:Net_276\ , + status_6 => \SPIM:BSPIM:rx_status_6\ , + status_5 => \SPIM:BSPIM:rx_status_5\ , + status_4 => \SPIM:BSPIM:rx_status_4\ ); + Properties: + { + cy_force_order = 1 + cy_int_mask = "0000000" + cy_md_select = "1000000" + } + Clock Polarity: Active High + Clock Enable: True + +UDB [UDB=(3,5)] contents: +LAB@[UDB=(3,5)][LB=0] #macrocells=4, #inputs=9, #pterms=8 +{ + [McSlotId=0]: MacroCell: Name=Net_479, Mode=(D-Register) @ [UDB=(3,5)][LB=0][MC=0] + Total # of inputs : 4 + Total # of product terms : 3 + List of special equations: + Clock = (\SPIM:Net_276\) => Global + Clock Enable: True + Main Equation : 3 pterms + !( + !Net_479 * !\SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_0\ + + !\SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_1\ * + \SPIM:BSPIM:state_0\ + + \SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_1\ * + !\SPIM:BSPIM:state_0\ + ); + Output = Net_479 (fanout=2) + Properties : + { + } + + [McSlotId=1]: MacroCell: Name=Net_439, Mode=(T-Register) @ [UDB=(3,5)][LB=0][MC=1] + Total # of inputs : 4 + Total # of product terms : 3 + List of special equations: + Clock = (\SPIM:Net_276\) => Global + Clock Enable: True + Main Equation : 3 pterms + ( + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * + !\SPIM:BSPIM:state_0\ * !Net_439 + + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * + \SPIM:BSPIM:state_0\ * Net_439 + + \SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_1\ * + \SPIM:BSPIM:state_0\ * !Net_439 + ); + Output = Net_439 (fanout=7) + Properties : + { + } + + [McSlotId=2]: MacroCell: Name=Net_30, Mode=(Combinatorial) @ [UDB=(3,5)][LB=0][MC=2] + Total # of inputs : 2 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + ( + !Net_439 * \SPIM:BSPIM:mosi_hs_reg\ + ); + Output = Net_30 (fanout=1) + Properties : + { + } + + [McSlotId=3]: MacroCell: Name=Net_419, Mode=(Combinatorial) @ [UDB=(3,5)][LB=0][MC=3] + Total # of inputs : 4 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + !( + !Net_439 * !mywire_1_2 * !mywire_1_1 * !mywire_1_0 + ); + Output = Net_419 (fanout=1) + Properties : + { + } +} + +LAB@[UDB=(3,5)][LB=1] #macrocells=4, #inputs=4, #pterms=4 +{ + [McSlotId=0]: MacroCell: Name=Net_422, Mode=(Combinatorial) @ [UDB=(3,5)][LB=1][MC=0] + Total # of inputs : 4 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + !( + !Net_439 * !mywire_1_2 * !mywire_1_1 * mywire_1_0 + ); + Output = Net_422 (fanout=1) + Properties : + { + } + + [McSlotId=1]: MacroCell: Name=Net_425, Mode=(Combinatorial) @ [UDB=(3,5)][LB=1][MC=1] + Total # of inputs : 4 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + !( + !Net_439 * !mywire_1_2 * mywire_1_1 * mywire_1_0 + ); + Output = Net_425 (fanout=1) + Properties : + { + } + + [McSlotId=2]: MacroCell: Name=Net_428, Mode=(Combinatorial) @ [UDB=(3,5)][LB=1][MC=2] + Total # of inputs : 4 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + !( + !Net_439 * !mywire_1_2 * mywire_1_1 * !mywire_1_0 + ); + Output = Net_428 (fanout=1) + Properties : + { + } + + [McSlotId=3]: MacroCell: Name=Net_585, Mode=(Combinatorial) @ [UDB=(3,5)][LB=1][MC=3] + Total # of inputs : 4 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + !( + !Net_439 * mywire_1_2 * !mywire_1_1 * !mywire_1_0 + ); + Output = Net_585 (fanout=1) + Properties : + { + } +} + +controlcell: Name =\SS:Async:ctrl_reg\ + PORT MAP ( + control_7 => \SS:control_7\ , + control_6 => \SS:control_6\ , + control_5 => \SS:control_5\ , + control_4 => \SS:control_4\ , + control_3 => \SS:control_3\ , + control_2 => mywire_1_2 , + control_1 => mywire_1_1 , + control_0 => mywire_1_0 ); + Properties: + { + cy_ctrl_mode_0 = "00000000" + cy_ctrl_mode_1 = "00000000" + cy_ext_reset = 0 + cy_force_order = 1 + cy_init_value = "00000000" + } + Clock Enable: True + Intr hod @ [IntrHod=(0)]: empty Drq hod @ [DrqHod=(0)]: empty Port 0 contains the following IO cells: @@ -3347,6 +3866,46 @@ Pin : Name = Pin_4(0) { } +[IoId=4]: +Pin : Name = Pin_5(0) + Attributes: + In Group/Port: True + In Sync Option: AUTO + Out Sync Option: NOSYNC + Interrupt generated: False + Interrupt mode: NONE + Drive mode: RES_PULL_UP + VTrip: EITHER + Slew: FAST + Input Sync needed: False + Output Sync needed: False + SC shield enabled: False + POR State: ANY + LCD Mode: COMMON + Register Mode: RegComb + CaSense Mode: NEITHER + Treat as pin: True + Is OE Registered: False + Uses Analog: False + Can contain Digital: True + Is SIO: False + SIO Output Buf: NONREGULATED + SIO Input Buf: SINGLE_ENDED + SIO HiFreq: LOW + SIO Hyst: DISABLED + SIO Vtrip: MULTIPLIER_0_5 + SIO RefSel: VCC_IO + Required Capabilitites: DIGITAL, ROUTABLE + Initial Value: 1 + IO Voltage: 0 + PORT MAP ( + pa_out => Pin_5(0)__PA , + input => Net_585 , + pad => Pin_5(0)_PAD ); + Properties: + { + } + [IoId=7]: Pin : Name = Tx_1(0) Attributes: @@ -3462,37 +4021,38 @@ Port | Pin | Fixed | Type | Drive Mode | Name | Connectio | 1 | * | NONE | RES_PULL_UP | Pin_2(0) | In(Net_422) | 2 | * | NONE | RES_PULL_UP | Pin_3(0) | In(Net_428) | 3 | * | NONE | RES_PULL_UP | Pin_4(0) | In(Net_425) + | 4 | * | NONE | RES_PULL_UP | Pin_5(0) | In(Net_585) | 7 | * | NONE | CMOS_OUT | Tx_1(0) | In(Net_234) ---------------------------------------------------------------------------------- -Digital component placer commit/Report: Elapsed time ==> 0s.003ms -Digital Placement phase: Elapsed time ==> 1s.395ms +Digital component placer commit/Report: Elapsed time ==> 0s.005ms +Digital Placement phase: Elapsed time ==> 1s.451ms Routing successful. -Digital Routing phase: Elapsed time ==> 2s.255ms +Digital Routing phase: Elapsed time ==> 3s.163ms -Bitstream and API generation phase: Elapsed time ==> 0s.215ms +Bitstream and API generation phase: Elapsed time ==> 0s.247ms -Bitstream verification phase: Elapsed time ==> 0s.073ms +Bitstream verification phase: Elapsed time ==> 0s.088ms Timing report is in PSOC5_SPI_LSM303D_timing.html. -Static timing analysis phase: Elapsed time ==> 0s.512ms +Static timing analysis phase: Elapsed time ==> 0s.652ms -Data reporting phase: Elapsed time ==> 0s.001ms +Data reporting phase: Elapsed time ==> 0s.000ms -Design database save phase: Elapsed time ==> 0s.220ms +Design database save phase: Elapsed time ==> 0s.331ms -cydsfit: Elapsed time ==> 5s.413ms +cydsfit: Elapsed time ==> 6s.878ms -Fitter phase: Elapsed time ==> 5s.453ms -API generation phase: Elapsed time ==> 0s.801ms -Dependency generation phase: Elapsed time ==> 0s.004ms -Cleanup phase: Elapsed time ==> 0s.001ms +Fitter phase: Elapsed time ==> 6s.922ms +API generation phase: Elapsed time ==> 1s.277ms +Dependency generation phase: Elapsed time ==> 0s.015ms +Cleanup phase: Elapsed time ==> 0s.002ms diff --git a/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.svd b/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.svd index 478d670..57e21c2 100644 --- a/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.svd +++ b/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D.svd @@ -7,33 +7,252 @@ 32 - SS + Timer_1 No description available - 0x40006475 + 0x40006504 0 - 0x1 + 0x91 registers - SS_CONTROL_REG - No description available + Timer_1_COUNTER + UDB.A0 - Current Down Counter Value 0x0 + 16 + read-write + 0 + 0 + + + Timer_1_PERIOD + UDB.D0 - Assigned Period + 0x20 + 16 + read-write + 0 + 0 + + + Timer_1_Control_Reg + UDB Control Register - Assigned Control Register Value + 0x70 8 read-write 0 0 + + + CTRL_ENABLE + Enable the Timer + 7 + 7 + read-write + + + CTRL_CMODE + Capture Mode + 5 + 6 + read-write + + + CTRL_TEN + Trigger Enable Bit + 4 + 4 + read-write + + + CTRL_TMODE + Trigger Mode + 2 + 3 + read-write + + + CTRL_IC + Interrupt Count + 0 + 1 + read-write + + + + + Timer_1_STATUS_MASK + UDB Status bits Interrupt Mask Enable Register + 0x80 + 8 + read-write + 0 + 0 + + + TIMER_STS_TC + Enables the Interrupt on TC + 0 + 0 + read-only + + + TIMER_STS_CAPT + Enables the Interrupt on Capture + 1 + 1 + read-only + + + TIMER_STS_FIFO_FULL + FIFO Full Status + 2 + 2 + read-only + + + TIMER_STS_FIFO_NEMPTY + FIFO Empty status + 3 + 3 + read-only + + + + + Timer_1_STATUS_AUX_CTRL + UDB Auxilliary Control Register + 0x90 + 8 + read-write + 0 + 0 + + + FIFO0_CLR + FIFO0 clear + 0 + 0 + read-write + + + E_FIFO_CLR_0 + Normal FIFO operation + 0 + + + E_FIFO_CLR_1 + Clear FIFO state + 1 + + + + + FIFO1_CLR + FIFO1 clear + 1 + 1 + read-write + + + E_FIFO_CLR_0 + Normal FIFO operation + 0 + + + E_FIFO_CLR_1 + Clear FIFO state + 1 + + + + + FIFO0_LVL + FIFO level + 2 + 2 + read-write + + + E_FIFO_LVL_0 + FIFO LVL: input mode: FIFO not full; output mode: FIFO not empty + 0 + + + E_FIFO_LVL_1 + FIFO LVL: input mode: FIFO at least 1/2 empty; output mode: FIFO at least 1/2 full + 1 + + + + + FIFO1_LVL + FIFO level + 3 + 3 + read-write + + + E_FIFO_LVL_0 + FIFO LVL: input mode: FIFO not full; output mode: FIFO not empty + 0 + + + E_FIFO_LVL_1 + FIFO LVL: input mode: FIFO at least 1/2 empty; output mode: FIFO at least 1/2 full + 1 + + + + + INT_EN + No description available + 4 + 4 + read-write + + + E_INT_EN0 + Interrupt disabled + 0 + + + E_INT_EN1 + Interrupt enabled + 1 + + + + + CNT_START + FIFO0 clear + 5 + 5 + read-write + + + E_CNT_START0 + Disable counter + 0 + + + E_CNT_START1 + Enable counter + 1 + + + + UART_1 UART - 0x40006441 + 0x40006444 0 - 0x22 + 0x21 registers @@ -49,7 +268,7 @@ TX_UART_1_TX_STATUS TX status register - 0x21 + 0x20 8 read-write 0 @@ -87,5 +306,26 @@ + + SS + No description available + 0x40006471 + + 0 + 0x1 + registers + + + + SS_CONTROL_REG + No description available + 0x0 + 8 + read-write + 0 + 0 + + + \ No newline at end of file diff --git a/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D_PSoC5lib.uvproj b/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D_PSoC5lib.uvproj index 31dd60d..332ff6e 100644 --- a/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D_PSoC5lib.uvproj +++ b/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D_PSoC5lib.uvproj @@ -662,6 +662,36 @@ 5 .\Generated_Source\PSoC5\SPIM_IntClock.h + + Pin_5_aliases.h + 5 + .\Generated_Source\PSoC5\Pin_5_aliases.h + + + Pin_5.c + 1 + .\Generated_Source\PSoC5\Pin_5.c + + + Pin_5.h + 5 + .\Generated_Source\PSoC5\Pin_5.h + + + Timer_1.c + 1 + .\Generated_Source\PSoC5\Timer_1.c + + + Timer_1.h + 5 + .\Generated_Source\PSoC5\Timer_1.h + + + Timer_1_PM.c + 1 + .\Generated_Source\PSoC5\Timer_1_PM.c + @@ -1326,6 +1356,36 @@ 5 .\Generated_Source\PSoC5\SPIM_IntClock.h + + Pin_5_aliases.h + 5 + .\Generated_Source\PSoC5\Pin_5_aliases.h + + + Pin_5.c + 1 + .\Generated_Source\PSoC5\Pin_5.c + + + Pin_5.h + 5 + .\Generated_Source\PSoC5\Pin_5.h + + + Timer_1.c + 1 + .\Generated_Source\PSoC5\Timer_1.c + + + Timer_1.h + 5 + .\Generated_Source\PSoC5\Timer_1.h + + + Timer_1_PM.c + 1 + .\Generated_Source\PSoC5\Timer_1_PM.c + diff --git a/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D_timing.html b/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D_timing.html index 6ba435b..9f1c194 100644 --- a/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D_timing.html +++ b/PSOC5_SPI_LSM303D.cydsn/PSOC5_SPI_LSM303D_timing.html @@ -539,7 +539,7 @@

Static Timing Analysis

Project : PSOC5_SPI_LSM303D Build Time : - 03/22/13 10:33:30 + 07/25/13 16:49:01 Device : CY8C5568AXI-060 Temperature : @@ -623,7 +623,7 @@

Static Timing Analysis

CyMASTER_CLK 2.000 MHz 2.000 MHz - 61.376 MHz + 52.394 MHz @@ -631,7 +631,7 @@

Static Timing Analysis

CyMASTER_CLK 923.077 kHz 923.077 kHz - 43.850 MHz + 42.472 MHz @@ -639,8 +639,8 @@

Static Timing Analysis

CyMASTER_CLK 24.000 MHz 24.000 MHz - N/A - + 43.373 MHz + CyPLL_OUT @@ -692,11 +692,11 @@

Static Timing Analysis

- \UART_1:BUART:tx_state_0\/q + \UART_1:BUART:tx_state_1\/q \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_0 - 43.850 MHz - 22.805 - 1060.528 + 42.472 MHz + 23.545 + 1059.788 @@ -715,29 +715,29 @@

Static Timing Analysis

- macrocell27 - U(2,5) + macrocell33 + U(3,0) 1 - \UART_1:BUART:tx_state_0\ - \UART_1:BUART:tx_state_0\/clock_0 - \UART_1:BUART:tx_state_0\/q + \UART_1:BUART:tx_state_1\ + \UART_1:BUART:tx_state_1\/clock_0 + \UART_1:BUART:tx_state_1\/q 1.250 Route 1 - \UART_1:BUART:tx_state_0\ - \UART_1:BUART:tx_state_0\/q - \UART_1:BUART:counter_load_not\/main_1 - 4.383 + \UART_1:BUART:tx_state_1\ + \UART_1:BUART:tx_state_1\/q + \UART_1:BUART:counter_load_not\/main_0 + 5.133 - macrocell24 - U(3,5) + macrocell29 + U(3,3) 1 \UART_1:BUART:counter_load_not\ - \UART_1:BUART:counter_load_not\/main_1 + \UART_1:BUART:counter_load_not\/main_0 \UART_1:BUART:counter_load_not\/q 3.350 @@ -748,11 +748,11 @@

Static Timing Analysis

\UART_1:BUART:counter_load_not\ \UART_1:BUART:counter_load_not\/q \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_0 - 2.302 + 2.292 - datapathcell3 - U(2,5) + datapathcell5 + U(3,3) 1 \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\ @@ -773,11 +773,11 @@

Static Timing Analysis

- \UART_1:BUART:tx_state_1\/q + \UART_1:BUART:tx_state_0\/q \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_0 - 45.027 MHz - 22.209 - 1061.124 + 44.039 MHz + 22.707 + 1060.626 @@ -796,29 +796,29 @@

Static Timing Analysis

- macrocell28 - U(2,5) + macrocell32 + U(2,3) 1 - \UART_1:BUART:tx_state_1\ - \UART_1:BUART:tx_state_1\/clock_0 - \UART_1:BUART:tx_state_1\/q + \UART_1:BUART:tx_state_0\ + \UART_1:BUART:tx_state_0\/clock_0 + \UART_1:BUART:tx_state_0\/q 1.250 Route 1 - \UART_1:BUART:tx_state_1\ - \UART_1:BUART:tx_state_1\/q - \UART_1:BUART:counter_load_not\/main_0 - 3.787 + \UART_1:BUART:tx_state_0\ + \UART_1:BUART:tx_state_0\/q + \UART_1:BUART:counter_load_not\/main_1 + 4.295 - macrocell24 - U(3,5) + macrocell29 + U(3,3) 1 \UART_1:BUART:counter_load_not\ - \UART_1:BUART:counter_load_not\/main_0 + \UART_1:BUART:counter_load_not\/main_1 \UART_1:BUART:counter_load_not\/q 3.350 @@ -829,11 +829,11 @@

Static Timing Analysis

\UART_1:BUART:counter_load_not\ \UART_1:BUART:counter_load_not\/q \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_0 - 2.302 + 2.292 - datapathcell3 - U(2,5) + datapathcell5 + U(3,3) 1 \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\ @@ -856,9 +856,9 @@

Static Timing Analysis

\UART_1:BUART:tx_bitclk\/q \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_0 - 46.471 MHz - 21.519 - 1061.814 + 46.484 MHz + 21.513 + 1061.820 @@ -877,8 +877,8 @@

Static Timing Analysis

- macrocell25 - U(2,5) + macrocell30 + U(2,3) 1 \UART_1:BUART:tx_bitclk\ \UART_1:BUART:tx_bitclk\/clock_0 @@ -892,11 +892,11 @@

Static Timing Analysis

\UART_1:BUART:tx_bitclk\ \UART_1:BUART:tx_bitclk\/q \UART_1:BUART:counter_load_not\/main_3 - 3.097 + 3.101 - macrocell24 - U(3,5) + macrocell29 + U(3,3) 1 \UART_1:BUART:counter_load_not\ \UART_1:BUART:counter_load_not\/main_3 @@ -910,11 +910,11 @@

Static Timing Analysis

\UART_1:BUART:counter_load_not\ \UART_1:BUART:counter_load_not\/q \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_0 - 2.302 + 2.292 - datapathcell3 - U(2,5) + datapathcell5 + U(3,3) 1 \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\ @@ -937,9 +937,9 @@

Static Timing Analysis

\UART_1:BUART:tx_state_2\/q \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_0 - 46.544 MHz - 21.485 - 1061.848 + 46.572 MHz + 21.472 + 1061.861 @@ -958,8 +958,8 @@

Static Timing Analysis

- macrocell29 - U(3,5) + macrocell34 + U(3,3) 1 \UART_1:BUART:tx_state_2\ \UART_1:BUART:tx_state_2\/clock_0 @@ -973,11 +973,11 @@

Static Timing Analysis

\UART_1:BUART:tx_state_2\ \UART_1:BUART:tx_state_2\/q \UART_1:BUART:counter_load_not\/main_2 - 3.063 + 3.060 - macrocell24 - U(3,5) + macrocell29 + U(3,3) 1 \UART_1:BUART:counter_load_not\ \UART_1:BUART:counter_load_not\/main_2 @@ -991,11 +991,11 @@

Static Timing Analysis

\UART_1:BUART:counter_load_not\ \UART_1:BUART:counter_load_not\/q \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_0 - 2.302 + 2.292 - datapathcell3 - U(2,5) + datapathcell5 + U(3,3) 1 \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\ @@ -1018,9 +1018,9 @@

Static Timing Analysis

\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cl0_comb \UART_1:BUART:sTX:TxShifter:u0\/cs_addr_0 - 50.176 MHz - 19.930 - 1063.403 + 50.181 MHz + 19.928 + 1063.405 @@ -1039,8 +1039,8 @@

Static Timing Analysis

- datapathcell3 - U(2,5) + datapathcell5 + U(3,3) 1 \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\ \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/clock @@ -1054,11 +1054,11 @@

Static Timing Analysis

\UART_1:BUART:tx_bitclk_dp\ \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cl0_comb \UART_1:BUART:tx_bitclk_enable_pre\/main_0 - 2.290 + 2.301 - macrocell26 - U(2,5) + macrocell31 + U(2,3) 1 \UART_1:BUART:tx_bitclk_enable_pre\ \UART_1:BUART:tx_bitclk_enable_pre\/main_0 @@ -1072,11 +1072,11 @@

Static Timing Analysis

\UART_1:BUART:tx_bitclk_enable_pre\ \UART_1:BUART:tx_bitclk_enable_pre\/q \UART_1:BUART:sTX:TxShifter:u0\/cs_addr_0 - 2.320 + 2.307 - datapathcell2 - U(3,5) + datapathcell4 + U(2,3) 1 \UART_1:BUART:sTX:TxShifter:u0\ @@ -1099,9 +1099,9 @@

Static Timing Analysis

\UART_1:BUART:sTX:TxShifter:u0\/f0_blk_stat_comb \UART_1:BUART:sTX:TxSts\/status_0 - 61.241 MHz - 16.329 - 1067.004 + 61.908 MHz + 16.153 + 1067.180 @@ -1120,8 +1120,8 @@

Static Timing Analysis

- datapathcell2 - U(3,5) + datapathcell4 + U(2,3) 1 \UART_1:BUART:sTX:TxShifter:u0\ \UART_1:BUART:sTX:TxShifter:u0\/clock @@ -1135,11 +1135,11 @@

Static Timing Analysis

\UART_1:BUART:tx_fifo_empty\ \UART_1:BUART:sTX:TxShifter:u0\/f0_blk_stat_comb \UART_1:BUART:tx_status_0\/main_2 - 3.227 + 3.639 - macrocell30 - U(2,5) + macrocell35 + U(2,3) 1 \UART_1:BUART:tx_status_0\ \UART_1:BUART:tx_status_0\/main_2 @@ -1153,11 +1153,11 @@

Static Timing Analysis

\UART_1:BUART:tx_status_0\ \UART_1:BUART:tx_status_0\/q \UART_1:BUART:sTX:TxSts\/status_0 - 2.902 + 2.314 - statusicell3 - U(3,4) + statusicell4 + U(2,3) 1 \UART_1:BUART:sTX:TxSts\ @@ -1178,11 +1178,11 @@

Static Timing Analysis

- \UART_1:BUART:sTX:TxShifter:u0\/so_comb - \UART_1:BUART:txn\/main_3 - 76.348 MHz - 13.098 - 1070.235 + \UART_1:BUART:tx_state_1\/q + \UART_1:BUART:sTX:TxSts\/status_0 + 73.578 MHz + 13.591 + 1069.742 @@ -1201,31 +1201,49 @@

Static Timing Analysis

- datapathcell2 - U(3,5) + macrocell33 + U(3,0) 1 - \UART_1:BUART:sTX:TxShifter:u0\ - \UART_1:BUART:sTX:TxShifter:u0\/clock - \UART_1:BUART:sTX:TxShifter:u0\/so_comb - 7.280 + \UART_1:BUART:tx_state_1\ + \UART_1:BUART:tx_state_1\/clock_0 + \UART_1:BUART:tx_state_1\/q + 1.250 Route 1 - \UART_1:BUART:tx_shift_out\ - \UART_1:BUART:sTX:TxShifter:u0\/so_comb - \UART_1:BUART:txn\/main_3 - 2.308 + \UART_1:BUART:tx_state_1\ + \UART_1:BUART:tx_state_1\/q + \UART_1:BUART:tx_status_0\/main_0 + 5.107 - macrocell32 - U(3,5) + macrocell35 + U(2,3) 1 - \UART_1:BUART:txn\ + \UART_1:BUART:tx_status_0\ + \UART_1:BUART:tx_status_0\/main_0 + \UART_1:BUART:tx_status_0\/q + 3.350 + + + Route + + 1 + \UART_1:BUART:tx_status_0\ + \UART_1:BUART:tx_status_0\/q + \UART_1:BUART:sTX:TxSts\/status_0 + 2.314 + + + statusicell4 + U(2,3) + 1 + \UART_1:BUART:sTX:TxSts\ SETUP - 3.510 + 1.570 Clock @@ -1241,11 +1259,11 @@

Static Timing Analysis

- \UART_1:BUART:tx_state_0\/q - \UART_1:BUART:sTX:TxSts\/status_0 - 77.640 MHz - 12.880 - 1070.453 + \UART_1:BUART:sTX:TxShifter:u0\/so_comb + \UART_1:BUART:txn\/main_3 + 76.318 MHz + 13.103 + 1070.230 @@ -1264,49 +1282,31 @@

Static Timing Analysis

- macrocell27 - U(2,5) - 1 - \UART_1:BUART:tx_state_0\ - \UART_1:BUART:tx_state_0\/clock_0 - \UART_1:BUART:tx_state_0\/q - 1.250 - - - Route - - 1 - \UART_1:BUART:tx_state_0\ - \UART_1:BUART:tx_state_0\/q - \UART_1:BUART:tx_status_0\/main_1 - 3.808 - - - macrocell30 - U(2,5) + datapathcell4 + U(2,3) 1 - \UART_1:BUART:tx_status_0\ - \UART_1:BUART:tx_status_0\/main_1 - \UART_1:BUART:tx_status_0\/q - 3.350 + \UART_1:BUART:sTX:TxShifter:u0\ + \UART_1:BUART:sTX:TxShifter:u0\/clock + \UART_1:BUART:sTX:TxShifter:u0\/so_comb + 7.280 Route 1 - \UART_1:BUART:tx_status_0\ - \UART_1:BUART:tx_status_0\/q - \UART_1:BUART:sTX:TxSts\/status_0 - 2.902 + \UART_1:BUART:tx_shift_out\ + \UART_1:BUART:sTX:TxShifter:u0\/so_comb + \UART_1:BUART:txn\/main_3 + 2.313 - statusicell3 - U(3,4) + macrocell37 + U(3,3) 1 - \UART_1:BUART:sTX:TxSts\ + \UART_1:BUART:txn\ SETUP - 1.570 + 3.510 Clock @@ -1323,10 +1323,10 @@

Static Timing Analysis

\UART_1:BUART:tx_state_1\/q - \UART_1:BUART:sTX:TxSts\/status_0 - 77.845 MHz - 12.846 - 1070.487 + \UART_1:BUART:sTX:TxShifter:u0\/cs_addr_2 + 78.858 MHz + 12.681 + 1070.652 @@ -1345,8 +1345,8 @@

Static Timing Analysis

- macrocell28 - U(2,5) + macrocell33 + U(3,0) 1 \UART_1:BUART:tx_state_1\ \UART_1:BUART:tx_state_1\/clock_0 @@ -1359,35 +1359,17 @@

Static Timing Analysis

1 \UART_1:BUART:tx_state_1\ \UART_1:BUART:tx_state_1\/q - \UART_1:BUART:tx_status_0\/main_0 - 3.774 - - - macrocell30 - U(2,5) - 1 - \UART_1:BUART:tx_status_0\ - \UART_1:BUART:tx_status_0\/main_0 - \UART_1:BUART:tx_status_0\/q - 3.350 - - - Route - - 1 - \UART_1:BUART:tx_status_0\ - \UART_1:BUART:tx_status_0\/q - \UART_1:BUART:sTX:TxSts\/status_0 - 2.902 + \UART_1:BUART:sTX:TxShifter:u0\/cs_addr_2 + 5.141 - statusicell3 - U(3,4) + datapathcell4 + U(2,3) 1 - \UART_1:BUART:sTX:TxSts\ + \UART_1:BUART:sTX:TxShifter:u0\ SETUP - 1.570 + 6.290 Clock @@ -1403,11 +1385,11 @@

Static Timing Analysis

- \UART_1:BUART:tx_state_0\/q - \UART_1:BUART:sTX:TxShifter:u0\/cs_addr_1 - 79.327 MHz - 12.606 - 1070.727 + \UART_1:BUART:sTX:TxShifter:u0\/f0_blk_stat_comb + \UART_1:BUART:tx_state_0\/main_2 + 80.457 MHz + 12.429 + 1070.904 @@ -1426,31 +1408,31 @@

Static Timing Analysis

- macrocell27 - U(2,5) + datapathcell4 + U(2,3) 1 - \UART_1:BUART:tx_state_0\ - \UART_1:BUART:tx_state_0\/clock_0 - \UART_1:BUART:tx_state_0\/q - 1.250 + \UART_1:BUART:sTX:TxShifter:u0\ + \UART_1:BUART:sTX:TxShifter:u0\/clock + \UART_1:BUART:sTX:TxShifter:u0\/f0_blk_stat_comb + 5.280 Route 1 - \UART_1:BUART:tx_state_0\ - \UART_1:BUART:tx_state_0\/q - \UART_1:BUART:sTX:TxShifter:u0\/cs_addr_1 - 5.066 + \UART_1:BUART:tx_fifo_empty\ + \UART_1:BUART:sTX:TxShifter:u0\/f0_blk_stat_comb + \UART_1:BUART:tx_state_0\/main_2 + 3.639 - datapathcell2 - U(3,5) + macrocell32 + U(2,3) 1 - \UART_1:BUART:sTX:TxShifter:u0\ + \UART_1:BUART:tx_state_0\ SETUP - 6.290 + 3.510 Clock @@ -1475,15 +1457,15 @@

Static Timing Analysis

Path Delay Requirement : 500ns(2 MHz)
+
Path Delay Requirement : 41.6667ns(24 MHz)
@@ -1497,11 +1479,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -1520,49 +1502,67 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - - - - + + + + - - - - + + + + - - + + - + + + + + + + + + + + + + + + + + + + - + @@ -1578,11 +1578,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -1601,31 +1601,49 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - + + + + + + + + + + + + + + + + + + + - + @@ -1641,11 +1659,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -1664,31 +1682,49 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - + + + + + + + + + + + + + + + + + + + - + @@ -1704,11 +1740,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -1727,31 +1763,49 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - + + + + + + + + + + + + + + + + + + + - + @@ -1767,11 +1821,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -1790,49 +1844,49 @@

Static Timing Analysis

- - + + - - - + + + - - - - + + + + - - + + - - - - + + + + - - - - + + + + - - + + - + - + @@ -1848,11 +1902,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -1871,49 +1925,31 @@

Static Timing Analysis

- - - - - - - - - - - - - - - - - - - - + + - - - - + + + + - - - - + + + + - - + + - + - + @@ -1929,11 +1965,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -1952,49 +1988,31 @@

Static Timing Analysis

- - - - - - - - - - - - - - - - - - - - + + - - - - + + + + - - + + - - - - + + + + - - + + - + - + @@ -2010,11 +2028,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -2033,49 +2051,31 @@

Static Timing Analysis

- - - - - - - - - - - - - - - - - - - - + + - - - - + + + + - - - - + + + + - - + + - + - + @@ -2091,11 +2091,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -2114,31 +2114,31 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - + - + @@ -2154,11 +2154,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -2177,46 +2177,64 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - - - + + + + + + + + + + + + + + + + + + + + + - - - - + + + + - - + + - + @@ -2240,25 +2258,1450 @@

Static Timing Analysis

- -
\SPIM:BSPIM:sR8:Dp:u0\/f1_blk_stat_comb\SPIM:BSPIM:RxStsReg\/status_661.376 MHz16.293483.707\Timer_1:TimerUDB:sT16:timerdp:u0\/z0\Timer_1:TimerUDB:sT16:timerdp:u1\/ci43.373 MHz23.05618.611
datapathcell1U(2,4)datapathcell2U(2,0) 1\SPIM:BSPIM:sR8:Dp:u0\\SPIM:BSPIM:sR8:Dp:u0\/clock\SPIM:BSPIM:sR8:Dp:u0\/f1_blk_stat_comb5.280\Timer_1:TimerUDB:sT16:timerdp:u0\\Timer_1:TimerUDB:sT16:timerdp:u0\/clock\Timer_1:TimerUDB:sT16:timerdp:u0\/z02.320
Route 1\SPIM:BSPIM:rx_status_4\\SPIM:BSPIM:sR8:Dp:u0\/f1_blk_stat_comb\SPIM:BSPIM:rx_status_6\/main_53.785\Timer_1:TimerUDB:sT16:timerdp:u0.z0__sig\\Timer_1:TimerUDB:sT16:timerdp:u0\/z0\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i0.000
macrocell18U(2,5)datapathcell3U(3,0) 1\SPIM:BSPIM:rx_status_6\\SPIM:BSPIM:rx_status_6\/main_5\SPIM:BSPIM:rx_status_6\/q3.350\Timer_1:TimerUDB:sT16:timerdp:u1\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb2.960
Route 1\SPIM:BSPIM:rx_status_6\\SPIM:BSPIM:rx_status_6\/q\SPIM:BSPIM:RxStsReg\/status_62.308\Timer_1:TimerUDB:per_zero\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_02.976
statusicell1U(2,5)datapathcell2U(2,0) 1\SPIM:BSPIM:RxStsReg\\Timer_1:TimerUDB:sT16:timerdp:u0\\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_0\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb9.710
Route 1\Timer_1:TimerUDB:sT16:timerdp:u0.co_msb__sig\\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb\Timer_1:TimerUDB:sT16:timerdp:u1\/ci0.000
datapathcell3U(3,0)1\Timer_1:TimerUDB:sT16:timerdp:u1\ SETUP1.5705.090
Clock
\SPIM:BSPIM:sR8:Dp:u0\/so_comb\SPIM:BSPIM:mosi_hs_reg\/main_364.416 MHz15.524484.476\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb\Timer_1:TimerUDB:sT16:timerdp:u1\/ci46.241 MHz21.62620.041
datapathcell1U(2,4)datapathcell3U(3,0) 1\SPIM:BSPIM:sR8:Dp:u0\\SPIM:BSPIM:sR8:Dp:u0\/clock\SPIM:BSPIM:sR8:Dp:u0\/so_comb8.300\Timer_1:TimerUDB:sT16:timerdp:u1\\Timer_1:TimerUDB:sT16:timerdp:u1\/clock\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb3.850
Route 1\SPIM:BSPIM:mosi_from_dp\\SPIM:BSPIM:sR8:Dp:u0\/so_comb\SPIM:BSPIM:mosi_hs_reg\/main_33.714\Timer_1:TimerUDB:per_zero\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_02.976
macrocell16U(3,5)datapathcell2U(2,0) 1\SPIM:BSPIM:mosi_hs_reg\\Timer_1:TimerUDB:sT16:timerdp:u0\\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_0\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb9.710
Route 1\Timer_1:TimerUDB:sT16:timerdp:u0.co_msb__sig\\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb\Timer_1:TimerUDB:sT16:timerdp:u1\/ci0.000
datapathcell3U(3,0)1\Timer_1:TimerUDB:sT16:timerdp:u1\ SETUP3.5105.090
Clock
\SPIM:BSPIM:sR8:Dp:u0\/so_comb\SPIM:BSPIM:mosi_pre_reg\/main_368.306 MHz14.640485.360\Timer_1:TimerUDB:sT16:timerdp:u0\/z0\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_050.566 MHz19.77621.891
datapathcell1U(2,4)datapathcell2U(2,0) 1\SPIM:BSPIM:sR8:Dp:u0\\SPIM:BSPIM:sR8:Dp:u0\/clock\SPIM:BSPIM:sR8:Dp:u0\/so_comb8.300\Timer_1:TimerUDB:sT16:timerdp:u0\\Timer_1:TimerUDB:sT16:timerdp:u0\/clock\Timer_1:TimerUDB:sT16:timerdp:u0\/z02.320
Route 1\SPIM:BSPIM:mosi_from_dp\\SPIM:BSPIM:sR8:Dp:u0\/so_comb\SPIM:BSPIM:mosi_pre_reg\/main_32.830\Timer_1:TimerUDB:sT16:timerdp:u0.z0__sig\\Timer_1:TimerUDB:sT16:timerdp:u0\/z0\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i0.000
macrocell17U(2,4)datapathcell3U(3,0) 1\SPIM:BSPIM:mosi_pre_reg\\Timer_1:TimerUDB:sT16:timerdp:u1\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb2.960
Route 1\Timer_1:TimerUDB:per_zero\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_02.976
datapathcell2U(2,0)1\Timer_1:TimerUDB:sT16:timerdp:u0\ SETUP3.51011.520
Clock
\SPIM:BSPIM:sR8:Dp:u0\/so_comb\SPIM:BSPIM:mosi_from_dp_reg\/main_068.353 MHz14.630485.370\Timer_1:TimerUDB:sT16:timerdp:u0\/z0\Timer_1:TimerUDB:sT16:timerdp:u1\/cs_addr_050.571 MHz19.77421.893
datapathcell1U(2,4)datapathcell2U(2,0) 1\SPIM:BSPIM:sR8:Dp:u0\\SPIM:BSPIM:sR8:Dp:u0\/clock\SPIM:BSPIM:sR8:Dp:u0\/so_comb8.300\Timer_1:TimerUDB:sT16:timerdp:u0\\Timer_1:TimerUDB:sT16:timerdp:u0\/clock\Timer_1:TimerUDB:sT16:timerdp:u0\/z02.320
Route 1\SPIM:BSPIM:mosi_from_dp\\SPIM:BSPIM:sR8:Dp:u0\/so_comb\SPIM:BSPIM:mosi_from_dp_reg\/main_02.820\Timer_1:TimerUDB:sT16:timerdp:u0.z0__sig\\Timer_1:TimerUDB:sT16:timerdp:u0\/z0\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i0.000
macrocell15U(3,4)datapathcell3U(3,0) 1\SPIM:BSPIM:mosi_from_dp_reg\\Timer_1:TimerUDB:sT16:timerdp:u1\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb2.960
datapathcell3U(3,0)1\Timer_1:TimerUDB:sT16:timerdp:u1\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb\Timer_1:TimerUDB:sT16:timerdp:u1\/cs_addr_02.974
datapathcell3U(3,0)1\Timer_1:TimerUDB:sT16:timerdp:u1\ SETUP3.51011.520
Clock
\SPIM:BSPIM:state_2\/q\SPIM:BSPIM:TxStsReg\/status_073.676 MHz13.573486.427\Timer_1:TimerUDB:timer_enable\/q\Timer_1:TimerUDB:sT16:timerdp:u1\/ci52.576 MHz19.02022.647
macrocell21U(2,4)macrocell27U(2,0) 1\SPIM:BSPIM:state_2\\SPIM:BSPIM:state_2\/clock_0\SPIM:BSPIM:state_2\/q\Timer_1:TimerUDB:timer_enable\\Timer_1:TimerUDB:timer_enable\/clock_0\Timer_1:TimerUDB:timer_enable\/q 1.250
Route 1\SPIM:BSPIM:state_2\\SPIM:BSPIM:state_2\/q\SPIM:BSPIM:tx_status_0\/main_04.486\Timer_1:TimerUDB:timer_enable\\Timer_1:TimerUDB:timer_enable\/q\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_12.970
macrocell22U(2,4)datapathcell2U(2,0) 1\SPIM:BSPIM:tx_status_0\\SPIM:BSPIM:tx_status_0\/main_0\SPIM:BSPIM:tx_status_0\/q3.350\Timer_1:TimerUDB:sT16:timerdp:u0\\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_1\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb9.710
Route 1\SPIM:BSPIM:tx_status_0\\SPIM:BSPIM:tx_status_0\/q\SPIM:BSPIM:TxStsReg\/status_02.917\Timer_1:TimerUDB:sT16:timerdp:u0.co_msb__sig\\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb\Timer_1:TimerUDB:sT16:timerdp:u1\/ci0.000
statusicell2U(2,3)datapathcell3U(3,0) 1\SPIM:BSPIM:TxStsReg\\Timer_1:TimerUDB:sT16:timerdp:u1\ SETUP1.5705.090
Clock
\SPIM:BSPIM:BitCounter\/count_1\SPIM:BSPIM:TxStsReg\/status_374.772 MHz13.374486.626\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_054.508 MHz18.34623.321
count7cellU(2,4)1\SPIM:BSPIM:BitCounter\\SPIM:BSPIM:BitCounter\/clock\SPIM:BSPIM:BitCounter\/count_12.110
Route 1\SPIM:BSPIM:count_1\\SPIM:BSPIM:BitCounter\/count_1\SPIM:BSPIM:dpcounter_one\/main_34.028
macrocell10U(2,3)datapathcell3U(3,0) 1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/main_3\SPIM:BSPIM:dpcounter_one\/q3.350\Timer_1:TimerUDB:sT16:timerdp:u1\\Timer_1:TimerUDB:sT16:timerdp:u1\/clock\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb3.850
Route 1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/q\SPIM:BSPIM:TxStsReg\/status_32.316\Timer_1:TimerUDB:per_zero\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_02.976
statusicell2U(2,3)datapathcell2U(2,0) 1\SPIM:BSPIM:TxStsReg\\Timer_1:TimerUDB:sT16:timerdp:u0\ SETUP1.57011.520
Clock
\SPIM:BSPIM:state_1\/q\SPIM:BSPIM:TxStsReg\/status_075.313 MHz13.278486.722\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb\Timer_1:TimerUDB:sT16:timerdp:u1\/cs_addr_054.514 MHz18.34423.323
macrocell20U(2,3)1\SPIM:BSPIM:state_1\\SPIM:BSPIM:state_1\/clock_0\SPIM:BSPIM:state_1\/q1.250
Route 1\SPIM:BSPIM:state_1\\SPIM:BSPIM:state_1\/q\SPIM:BSPIM:tx_status_0\/main_14.191
macrocell22U(2,4)datapathcell3U(3,0) 1\SPIM:BSPIM:tx_status_0\\SPIM:BSPIM:tx_status_0\/main_1\SPIM:BSPIM:tx_status_0\/q3.350\Timer_1:TimerUDB:sT16:timerdp:u1\\Timer_1:TimerUDB:sT16:timerdp:u1\/clock\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb3.850
Route datapathcell3U(3,0) 1\SPIM:BSPIM:tx_status_0\\SPIM:BSPIM:tx_status_0\/q\SPIM:BSPIM:TxStsReg\/status_02.917\Timer_1:TimerUDB:sT16:timerdp:u1\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb\Timer_1:TimerUDB:sT16:timerdp:u1\/cs_addr_02.974
statusicell2U(2,3)datapathcell3U(3,0) 1\SPIM:BSPIM:TxStsReg\\Timer_1:TimerUDB:sT16:timerdp:u1\ SETUP1.57011.520
Clock
\SPIM:BSPIM:BitCounter\/count_1\SPIM:BSPIM:RxStsReg\/status_675.919 MHz13.172486.828\Timer_1:TimerUDB:timer_enable\/q\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_163.532 MHz15.74025.927
count7cellU(2,4)1\SPIM:BSPIM:BitCounter\\SPIM:BSPIM:BitCounter\/clock\SPIM:BSPIM:BitCounter\/count_12.110
Route 1\SPIM:BSPIM:count_1\\SPIM:BSPIM:BitCounter\/count_1\SPIM:BSPIM:rx_status_6\/main_33.834
macrocell18U(2,5)macrocell27U(2,0) 1\SPIM:BSPIM:rx_status_6\\SPIM:BSPIM:rx_status_6\/main_3\SPIM:BSPIM:rx_status_6\/q3.350\Timer_1:TimerUDB:timer_enable\\Timer_1:TimerUDB:timer_enable\/clock_0\Timer_1:TimerUDB:timer_enable\/q1.250
Route 1\SPIM:BSPIM:rx_status_6\\SPIM:BSPIM:rx_status_6\/q\SPIM:BSPIM:RxStsReg\/status_62.308\Timer_1:TimerUDB:timer_enable\\Timer_1:TimerUDB:timer_enable\/q\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_12.970
statusicell1U(2,5)datapathcell2U(2,0) 1\SPIM:BSPIM:RxStsReg\\Timer_1:TimerUDB:sT16:timerdp:u0\ SETUP1.57011.520
Clock
\SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb\SPIM:BSPIM:state_1\/main_875.976 MHz13.162486.838\Timer_1:TimerUDB:timer_enable\/q\Timer_1:TimerUDB:sT16:timerdp:u1\/cs_addr_163.971 MHz15.63226.035
datapathcell1U(2,4)macrocell27U(2,0) 1\SPIM:BSPIM:sR8:Dp:u0\\SPIM:BSPIM:sR8:Dp:u0\/clock\SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb5.280\Timer_1:TimerUDB:timer_enable\\Timer_1:TimerUDB:timer_enable\/clock_0\Timer_1:TimerUDB:timer_enable\/q1.250
Route 1\SPIM:BSPIM:tx_status_1\\SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb\SPIM:BSPIM:state_1\/main_84.372\Timer_1:TimerUDB:timer_enable\\Timer_1:TimerUDB:timer_enable\/q\Timer_1:TimerUDB:sT16:timerdp:u1\/cs_addr_12.862
macrocell20U(2,3)datapathcell3U(3,0) 1\SPIM:BSPIM:state_1\\Timer_1:TimerUDB:sT16:timerdp:u1\ SETUP3.51011.520
Clock
\SPIM:BSPIM:BitCounter\/count_3\SPIM:BSPIM:RxStsReg\/status_676.023 MHz13.154486.846\Timer_1:TimerUDB:sT16:timerdp:u0\/z0\Timer_1:TimerUDB:nrstSts:stsreg\/status_065.240 MHz15.32826.339
count7cellU(2,4)datapathcell2U(2,0) 1\SPIM:BSPIM:BitCounter\\SPIM:BSPIM:BitCounter\/clock\SPIM:BSPIM:BitCounter\/count_32.110\Timer_1:TimerUDB:sT16:timerdp:u0\\Timer_1:TimerUDB:sT16:timerdp:u0\/clock\Timer_1:TimerUDB:sT16:timerdp:u0\/z02.320
Route 1\SPIM:BSPIM:count_3\\SPIM:BSPIM:BitCounter\/count_3\SPIM:BSPIM:rx_status_6\/main_13.816\Timer_1:TimerUDB:sT16:timerdp:u0.z0__sig\\Timer_1:TimerUDB:sT16:timerdp:u0\/z0\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i0.000
macrocell18U(2,5)datapathcell3U(3,0) 1\SPIM:BSPIM:rx_status_6\\SPIM:BSPIM:rx_status_6\/main_1\SPIM:BSPIM:rx_status_6\/q\Timer_1:TimerUDB:sT16:timerdp:u1\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb2.960
Route 1\Timer_1:TimerUDB:per_zero\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb\Timer_1:TimerUDB:status_tc\/main_12.866
macrocell26U(2,0)1\Timer_1:TimerUDB:status_tc\\Timer_1:TimerUDB:status_tc\/main_1\Timer_1:TimerUDB:status_tc\/q 3.350
Route 1\SPIM:BSPIM:rx_status_6\\SPIM:BSPIM:rx_status_6\/q\SPIM:BSPIM:RxStsReg\/status_62.308\Timer_1:TimerUDB:status_tc\\Timer_1:TimerUDB:status_tc\/q\Timer_1:TimerUDB:nrstSts:stsreg\/status_02.262
statusicell1U(2,5)statusicell3U(2,0) 1\SPIM:BSPIM:RxStsReg\\Timer_1:TimerUDB:nrstSts:stsreg\ SETUP 1.570
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SourceDestinationFMaxDelay (ns)Slack (ns)Violation
\SPIM:BSPIM:BitCounter\/count_2\SPIM:BSPIM:TxStsReg\/status_352.394 MHz19.086480.914
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
count7cellU(2,4)1\SPIM:BSPIM:BitCounter\\SPIM:BSPIM:BitCounter\/clock\SPIM:BSPIM:BitCounter\/count_22.110
Route 1\SPIM:BSPIM:count_2\\SPIM:BSPIM:BitCounter\/count_2\SPIM:BSPIM:dpcounter_one\/main_26.478
macrocell11U(2,5)1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/main_2\SPIM:BSPIM:dpcounter_one\/q3.350
Route 1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/q\SPIM:BSPIM:TxStsReg\/status_35.578
statusicell2U(2,5)1\SPIM:BSPIM:TxStsReg\SETUP1.570
Clock Skew0.000
+
\SPIM:BSPIM:state_1\/q\SPIM:BSPIM:TxStsReg\/status_056.770 MHz17.615482.385
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell21U(2,5)1\SPIM:BSPIM:state_1\\SPIM:BSPIM:state_1\/clock_0\SPIM:BSPIM:state_1\/q1.250
Route 1\SPIM:BSPIM:state_1\\SPIM:BSPIM:state_1\/q\SPIM:BSPIM:tx_status_0\/main_18.508
macrocell23U(2,4)1\SPIM:BSPIM:tx_status_0\\SPIM:BSPIM:tx_status_0\/main_1\SPIM:BSPIM:tx_status_0\/q3.350
Route 1\SPIM:BSPIM:tx_status_0\\SPIM:BSPIM:tx_status_0\/q\SPIM:BSPIM:TxStsReg\/status_02.937
statusicell2U(2,5)1\SPIM:BSPIM:TxStsReg\SETUP1.570
Clock Skew0.000
+
\SPIM:BSPIM:state_1\/q\SPIM:BSPIM:sR8:Dp:u0\/cs_addr_157.166 MHz17.493482.507
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell21U(2,5)1\SPIM:BSPIM:state_1\\SPIM:BSPIM:state_1\/clock_0\SPIM:BSPIM:state_1\/q1.250
Route 1\SPIM:BSPIM:state_1\\SPIM:BSPIM:state_1\/q\SPIM:BSPIM:sR8:Dp:u0\/cs_addr_19.073
datapathcell1U(2,4)1\SPIM:BSPIM:sR8:Dp:u0\SETUP7.170
Clock Skew0.000
+
\SPIM:BSPIM:BitCounter\/count_0\SPIM:BSPIM:TxStsReg\/status_358.493 MHz17.096482.904
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
count7cellU(2,4)1\SPIM:BSPIM:BitCounter\\SPIM:BSPIM:BitCounter\/clock\SPIM:BSPIM:BitCounter\/count_02.110
Route 1\SPIM:BSPIM:count_0\\SPIM:BSPIM:BitCounter\/count_0\SPIM:BSPIM:dpcounter_one\/main_44.488
macrocell11U(2,5)1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/main_4\SPIM:BSPIM:dpcounter_one\/q3.350
Route 1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/q\SPIM:BSPIM:TxStsReg\/status_35.578
statusicell2U(2,5)1\SPIM:BSPIM:TxStsReg\SETUP1.570
Clock Skew0.000
+
\SPIM:BSPIM:BitCounter\/count_3\SPIM:BSPIM:TxStsReg\/status_358.772 MHz17.015482.985
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
count7cellU(2,4)1\SPIM:BSPIM:BitCounter\\SPIM:BSPIM:BitCounter\/clock\SPIM:BSPIM:BitCounter\/count_32.110
Route 1\SPIM:BSPIM:count_3\\SPIM:BSPIM:BitCounter\/count_3\SPIM:BSPIM:dpcounter_one\/main_14.407
macrocell11U(2,5)1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/main_1\SPIM:BSPIM:dpcounter_one\/q3.350
Route 1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/q\SPIM:BSPIM:TxStsReg\/status_35.578
statusicell2U(2,5)1\SPIM:BSPIM:TxStsReg\SETUP1.570
Clock Skew0.000
+
\SPIM:BSPIM:BitCounter\/count_4\SPIM:BSPIM:TxStsReg\/status_359.841 MHz16.711483.289
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
count7cellU(2,4)1\SPIM:BSPIM:BitCounter\\SPIM:BSPIM:BitCounter\/clock\SPIM:BSPIM:BitCounter\/count_42.110
Route 1\SPIM:BSPIM:count_4\\SPIM:BSPIM:BitCounter\/count_4\SPIM:BSPIM:dpcounter_one\/main_04.103
macrocell11U(2,5)1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/main_0\SPIM:BSPIM:dpcounter_one\/q3.350
Route 1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/q\SPIM:BSPIM:TxStsReg\/status_35.578
statusicell2U(2,5)1\SPIM:BSPIM:TxStsReg\SETUP1.570
Clock Skew0.000
+
\SPIM:BSPIM:BitCounter\/count_1\SPIM:BSPIM:TxStsReg\/status_360.245 MHz16.599483.401
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
count7cellU(2,4)1\SPIM:BSPIM:BitCounter\\SPIM:BSPIM:BitCounter\/clock\SPIM:BSPIM:BitCounter\/count_12.110
Route 1\SPIM:BSPIM:count_1\\SPIM:BSPIM:BitCounter\/count_1\SPIM:BSPIM:dpcounter_one\/main_33.991
macrocell11U(2,5)1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/main_3\SPIM:BSPIM:dpcounter_one\/q3.350
Route 1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/q\SPIM:BSPIM:TxStsReg\/status_35.578
statusicell2U(2,5)1\SPIM:BSPIM:TxStsReg\SETUP1.570
Clock Skew0.000
+
\SPIM:BSPIM:sR8:Dp:u0\/f1_blk_stat_comb\SPIM:BSPIM:RxStsReg\/status_661.072 MHz16.374483.626
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
datapathcell1U(2,4)1\SPIM:BSPIM:sR8:Dp:u0\\SPIM:BSPIM:sR8:Dp:u0\/clock\SPIM:BSPIM:sR8:Dp:u0\/f1_blk_stat_comb5.280
Route 1\SPIM:BSPIM:rx_status_4\\SPIM:BSPIM:sR8:Dp:u0\/f1_blk_stat_comb\SPIM:BSPIM:rx_status_6\/main_53.241
macrocell19U(2,3)1\SPIM:BSPIM:rx_status_6\\SPIM:BSPIM:rx_status_6\/main_5\SPIM:BSPIM:rx_status_6\/q3.350
Route 1\SPIM:BSPIM:rx_status_6\\SPIM:BSPIM:rx_status_6\/q\SPIM:BSPIM:RxStsReg\/status_62.933
statusicell1U(3,4)1\SPIM:BSPIM:RxStsReg\SETUP1.570
Clock Skew0.000
+
\SPIM:BSPIM:state_2\/q\SPIM:BSPIM:mosi_hs_reg\/main_063.147 MHz15.836484.164
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell22U(2,4)1\SPIM:BSPIM:state_2\\SPIM:BSPIM:state_2\/clock_0\SPIM:BSPIM:state_2\/q1.250
Route 1\SPIM:BSPIM:state_2\\SPIM:BSPIM:state_2\/q\SPIM:BSPIM:mosi_hs_reg\/main_011.076
macrocell17U(3,3)1\SPIM:BSPIM:mosi_hs_reg\SETUP3.510
Clock Skew0.000
+
\SPIM:BSPIM:sR8:Dp:u0\/so_comb\SPIM:BSPIM:mosi_hs_reg\/main_363.605 MHz15.722484.278
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
datapathcell1U(2,4)1\SPIM:BSPIM:sR8:Dp:u0\\SPIM:BSPIM:sR8:Dp:u0\/clock\SPIM:BSPIM:sR8:Dp:u0\/so_comb8.300
Route 1\SPIM:BSPIM:mosi_from_dp\\SPIM:BSPIM:sR8:Dp:u0\/so_comb\SPIM:BSPIM:mosi_hs_reg\/main_33.912
macrocell17U(3,3)1\SPIM:BSPIM:mosi_hs_reg\SETUP3.510
Clock Skew0.000
+
+
+
+
+ + + +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SourceDestinationSlack (ns)Violation
\UART_1:BUART:tx_state_1\/q\UART_1:BUART:tx_state_1\/main_03.482
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell33U(3,0)1\UART_1:BUART:tx_state_1\\UART_1:BUART:tx_state_1\/clock_0\UART_1:BUART:tx_state_1\/q1.250
macrocell33U(3,0)1\UART_1:BUART:tx_state_1\\UART_1:BUART:tx_state_1\/q\UART_1:BUART:tx_state_1\/main_02.232
macrocell33U(3,0)1\UART_1:BUART:tx_state_1\ HOLD0.000
Clock Skew0.000
+
\UART_1:BUART:txn\/q\UART_1:BUART:txn\/main_03.544
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell37U(3,3)1\UART_1:BUART:txn\\UART_1:BUART:txn\/clock_0\UART_1:BUART:txn\/q1.250
macrocell37U(3,3)1\UART_1:BUART:txn\\UART_1:BUART:txn\/q\UART_1:BUART:txn\/main_02.294
macrocell37U(3,3)1\UART_1:BUART:txn\ HOLD0.000
Clock Skew0.000
+
\UART_1:BUART:tx_state_2\/q\UART_1:BUART:tx_state_2\/main_24.205
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell34U(3,3)1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/clock_0\UART_1:BUART:tx_state_2\/q1.250
macrocell34U(3,3)1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/q\UART_1:BUART:tx_state_2\/main_22.955
macrocell34U(3,3)1\UART_1:BUART:tx_state_2\ HOLD0.000
Clock Skew0.000
+
\UART_1:BUART:tx_state_2\/q\UART_1:BUART:txn\/main_44.205
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell34U(3,3)1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/clock_0\UART_1:BUART:tx_state_2\/q1.250
Route1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/q\UART_1:BUART:txn\/main_42.955
macrocell37U(3,3)1\UART_1:BUART:txn\ HOLD0.000
Clock Skew0.000
+
\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:tx_state_2\/main_34.218
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell30U(2,3)1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/clock_0\UART_1:BUART:tx_bitclk\/q1.250
Route1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:tx_state_2\/main_32.968
macrocell34U(3,3)1\UART_1:BUART:tx_state_2\ HOLD0.000
Clock Skew0.000
+
\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:txn\/main_54.218
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell30U(2,3)1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/clock_0\UART_1:BUART:tx_bitclk\/q1.250
Route1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:txn\/main_52.968
macrocell37U(3,3)1\UART_1:BUART:txn\ HOLD0.000
Clock Skew0.000
+
\UART_1:BUART:tx_state_2\/q\UART_1:BUART:tx_state_0\/main_34.312
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell34U(3,3)1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/clock_0\UART_1:BUART:tx_state_2\/q1.250
Route1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/q\UART_1:BUART:tx_state_0\/main_33.062
macrocell32U(2,3)1\UART_1:BUART:tx_state_0\ HOLD0.000
Clock Skew0.000
+
\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:tx_state_0\/main_44.354
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell30U(2,3)1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/clock_0\UART_1:BUART:tx_bitclk\/q1.250
Route1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:tx_state_0\/main_43.104
macrocell32U(2,3)1\UART_1:BUART:tx_state_0\ HOLD0.000
Clock Skew0.000
+
\UART_1:BUART:tx_state_0\/q\UART_1:BUART:tx_state_2\/main_14.847
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell32U(2,3)1\UART_1:BUART:tx_state_0\\UART_1:BUART:tx_state_0\/clock_0\UART_1:BUART:tx_state_0\/q1.250
Route1\UART_1:BUART:tx_state_0\\UART_1:BUART:tx_state_0\/q\UART_1:BUART:tx_state_2\/main_13.597
macrocell34U(3,3)1\UART_1:BUART:tx_state_2\ HOLD0.000
Clock Skew0.000
+
\UART_1:BUART:tx_state_0\/q\UART_1:BUART:txn\/main_24.847
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell32U(2,3)1\UART_1:BUART:tx_state_0\\UART_1:BUART:tx_state_0\/clock_0\UART_1:BUART:tx_state_0\/q1.250
Route1\UART_1:BUART:tx_state_0\\UART_1:BUART:tx_state_0\/q\UART_1:BUART:txn\/main_23.597
macrocell37U(3,3)1\UART_1:BUART:txn\ HOLD0.000
Clock Skew0.000
+
+
+
+
+
+
+
+
@@ -2271,9 +3714,9 @@

Static Timing Analysis

- - - + + + @@ -2292,28 +3735,28 @@

Static Timing Analysis

- - + + - - - - + + + + - - + + - - - - + + + + - - + + - + @@ -2332,9 +3775,9 @@

Static Timing Analysis

- - - + + + @@ -2353,28 +3796,28 @@

Static Timing Analysis

- - + + - - - + + + - - - - + + + + - - + + - + @@ -2393,9 +3836,9 @@

Static Timing Analysis

- - - + + + @@ -2415,27 +3858,27 @@

Static Timing Analysis

- + - - - + + + - - - - + + + + - - + + - + @@ -2454,9 +3897,9 @@

Static Timing Analysis

- - - + + + @@ -2475,28 +3918,28 @@

Static Timing Analysis

- - + + - - - + + + - - - - + + + + - - + + - + @@ -2515,9 +3958,9 @@

Static Timing Analysis

- - - + + + @@ -2536,28 +3979,28 @@

Static Timing Analysis

- - + + - - - + + + - - + + - - - - + + + + - - + + - + @@ -2576,9 +4019,9 @@

Static Timing Analysis

- - - + + + @@ -2597,28 +4040,28 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - + @@ -2637,9 +4080,9 @@

Static Timing Analysis

- - - + + + @@ -2658,28 +4101,28 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - + @@ -2698,9 +4141,9 @@

Static Timing Analysis

- - - + + + @@ -2719,28 +4162,28 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - + @@ -2759,9 +4202,9 @@

Static Timing Analysis

- - - + + + @@ -2780,28 +4223,28 @@

Static Timing Analysis

- - + + - - - - + + + + - - + + - - - - + + + + - - + + - + @@ -2820,9 +4263,9 @@

Static Timing Analysis

- - - + + + @@ -2841,28 +4284,28 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - + @@ -2909,8 +4352,8 @@

Static Timing Analysis

- - + + @@ -2930,28 +4373,89 @@

Static Timing Analysis

- - + + - - - + + + - - + + - - - + + + - - + + - + + + + + + + + + + + + + + + +
\UART_1:BUART:tx_state_2\/q\UART_1:BUART:tx_state_2\/main_24.183\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb\Timer_1:TimerUDB:sT16:timerdp:u1\/ci3.210
macrocell29U(3,5)datapathcell2U(2,0) 1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/clock_0\UART_1:BUART:tx_state_2\/q1.250\Timer_1:TimerUDB:sT16:timerdp:u0\\Timer_1:TimerUDB:sT16:timerdp:u0\/clock\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb3.210
macrocell29U(3,5)Route 1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/q\UART_1:BUART:tx_state_2\/main_22.933\Timer_1:TimerUDB:sT16:timerdp:u0.co_msb__sig\\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb\Timer_1:TimerUDB:sT16:timerdp:u1\/ci0.000
macrocell29U(3,5)datapathcell3U(3,0) 1\UART_1:BUART:tx_state_2\\Timer_1:TimerUDB:sT16:timerdp:u1\ HOLD 0.000
\UART_1:BUART:tx_state_2\/q\UART_1:BUART:txn\/main_44.183\Timer_1:TimerUDB:run_mode\/q\Timer_1:TimerUDB:timer_enable\/main_23.487
macrocell29U(3,5)macrocell25U(2,0) 1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/clock_0\UART_1:BUART:tx_state_2\/q\Timer_1:TimerUDB:run_mode\\Timer_1:TimerUDB:run_mode\/clock_0\Timer_1:TimerUDB:run_mode\/q 1.250
Route 1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/q\UART_1:BUART:txn\/main_42.933\Timer_1:TimerUDB:run_mode\\Timer_1:TimerUDB:run_mode\/q\Timer_1:TimerUDB:timer_enable\/main_22.237
macrocell32U(3,5)macrocell27U(2,0) 1\UART_1:BUART:txn\\Timer_1:TimerUDB:timer_enable\ HOLD 0.000
\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:tx_state_2\/main_34.218\Timer_1:TimerUDB:run_mode\/q\Timer_1:TimerUDB:trig_disable\/main_13.487
macrocell25U(2,5)U(2,0) 1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/clock_0\UART_1:BUART:tx_bitclk\/q\Timer_1:TimerUDB:run_mode\\Timer_1:TimerUDB:run_mode\/clock_0\Timer_1:TimerUDB:run_mode\/q 1.250
Route 1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:tx_state_2\/main_32.968\Timer_1:TimerUDB:run_mode\\Timer_1:TimerUDB:run_mode\/q\Timer_1:TimerUDB:trig_disable\/main_12.237
macrocell29U(3,5)macrocell28U(2,0) 1\UART_1:BUART:tx_state_2\\Timer_1:TimerUDB:trig_disable\ HOLD 0.000
\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:txn\/main_54.218\Timer_1:TimerUDB:trig_disable\/q\Timer_1:TimerUDB:timer_enable\/main_43.490
macrocell25U(2,5)macrocell28U(2,0) 1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/clock_0\UART_1:BUART:tx_bitclk\/q\Timer_1:TimerUDB:trig_disable\\Timer_1:TimerUDB:trig_disable\/clock_0\Timer_1:TimerUDB:trig_disable\/q 1.250
Route 1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:txn\/main_52.968\Timer_1:TimerUDB:trig_disable\\Timer_1:TimerUDB:trig_disable\/q\Timer_1:TimerUDB:timer_enable\/main_42.240
macrocell32U(3,5)macrocell27U(2,0) 1\UART_1:BUART:txn\\Timer_1:TimerUDB:timer_enable\ HOLD 0.000
\UART_1:BUART:tx_state_2\/q\UART_1:BUART:tx_state_0\/main_34.315\Timer_1:TimerUDB:trig_disable\/q\Timer_1:TimerUDB:trig_disable\/main_33.490
macrocell29U(3,5)macrocell28U(2,0) 1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/clock_0\UART_1:BUART:tx_state_2\/q\Timer_1:TimerUDB:trig_disable\\Timer_1:TimerUDB:trig_disable\/clock_0\Timer_1:TimerUDB:trig_disable\/q 1.250
Routemacrocell28U(2,0) 1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/q\UART_1:BUART:tx_state_0\/main_33.065\Timer_1:TimerUDB:trig_disable\\Timer_1:TimerUDB:trig_disable\/q\Timer_1:TimerUDB:trig_disable\/main_32.240
macrocell27U(2,5)macrocell28U(2,0) 1\UART_1:BUART:tx_state_0\\Timer_1:TimerUDB:trig_disable\ HOLD 0.000
\UART_1:BUART:tx_state_2\/q\UART_1:BUART:tx_state_1\/main_24.315ClockBlock_1k__SYNC/out\Timer_1:TimerUDB:sT16:timerdp:u1\/clk_en3.677
macrocell29U(3,5)synccellU(3,0) 1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/clock_0\UART_1:BUART:tx_state_2\/q1.250ClockBlock_1k__SYNCClockBlock_1k__SYNC/clockClockBlock_1k__SYNC/out1.000
Route 1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/q\UART_1:BUART:tx_state_1\/main_23.065ClockBlock_1k__SYNC_OUTClockBlock_1k__SYNC/out\Timer_1:TimerUDB:sT16:timerdp:u1\/clk_en2.677
macrocell28U(2,5)datapathcell3U(3,0) 1\UART_1:BUART:tx_state_1\\Timer_1:TimerUDB:sT16:timerdp:u1\ HOLD 0.000
\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:tx_state_0\/main_44.346ClockBlock_1k__SYNC/out\Timer_1:TimerUDB:nrstSts:stsreg\/clk_en3.700
macrocell25U(2,5)synccellU(3,0) 1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/clock_0\UART_1:BUART:tx_bitclk\/q1.250ClockBlock_1k__SYNCClockBlock_1k__SYNC/clockClockBlock_1k__SYNC/out1.000
Route 1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:tx_state_0\/main_43.096ClockBlock_1k__SYNC_OUTClockBlock_1k__SYNC/out\Timer_1:TimerUDB:nrstSts:stsreg\/clk_en2.700
macrocell27U(2,5)statusicell3U(2,0) 1\UART_1:BUART:tx_state_0\\Timer_1:TimerUDB:nrstSts:stsreg\ HOLD 0.000
\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:tx_state_1\/main_34.346ClockBlock_1k__SYNC/out\Timer_1:TimerUDB:run_mode\/clk_en3.700
macrocell25U(2,5)synccellU(3,0) 1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/clock_0\UART_1:BUART:tx_bitclk\/q1.250ClockBlock_1k__SYNCClockBlock_1k__SYNC/clockClockBlock_1k__SYNC/out1.000
Route 1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:tx_state_1\/main_33.096ClockBlock_1k__SYNC_OUTClockBlock_1k__SYNC/out\Timer_1:TimerUDB:run_mode\/clk_en2.700
macrocell28U(2,5)macrocell25U(2,0) 1\UART_1:BUART:tx_state_1\\Timer_1:TimerUDB:run_mode\ HOLD 0.000
\UART_1:BUART:txn\/q\UART_1:BUART:txn\/main_04.426ClockBlock_1k__SYNC/out\Timer_1:TimerUDB:sT16:timerdp:u0\/clk_en3.700
macrocell32U(3,5)synccellU(3,0) 1\UART_1:BUART:txn\\UART_1:BUART:txn\/clock_0\UART_1:BUART:txn\/q1.250ClockBlock_1k__SYNCClockBlock_1k__SYNC/clockClockBlock_1k__SYNC/out1.000
macrocell32U(3,5)Route 1\UART_1:BUART:txn\\UART_1:BUART:txn\/q\UART_1:BUART:txn\/main_03.176ClockBlock_1k__SYNC_OUTClockBlock_1k__SYNC/out\Timer_1:TimerUDB:sT16:timerdp:u0\/clk_en2.700
macrocell32U(3,5)datapathcell2U(2,0) 1\UART_1:BUART:txn\\Timer_1:TimerUDB:sT16:timerdp:u0\ HOLD 0.000
\UART_1:BUART:tx_state_1\/q\UART_1:BUART:tx_state_2\/main_05.011ClockBlock_1k__SYNC/out\Timer_1:TimerUDB:timer_enable\/clk_en3.700
macrocell28U(2,5)synccellU(3,0) 1\UART_1:BUART:tx_state_1\\UART_1:BUART:tx_state_1\/clock_0\UART_1:BUART:tx_state_1\/q1.250ClockBlock_1k__SYNCClockBlock_1k__SYNC/clockClockBlock_1k__SYNC/out1.000
Route 1\UART_1:BUART:tx_state_1\\UART_1:BUART:tx_state_1\/q\UART_1:BUART:tx_state_2\/main_03.761ClockBlock_1k__SYNC_OUTClockBlock_1k__SYNC/out\Timer_1:TimerUDB:timer_enable\/clk_en2.700
macrocell29U(3,5)macrocell27U(2,0) 1\UART_1:BUART:tx_state_2\\Timer_1:TimerUDB:timer_enable\ HOLD 0.000
\SPIM:BSPIM:cnt_enable\/q\SPIM:BSPIM:cnt_enable\/main_9\SPIM:BSPIM:mosi_pre_reg\/q\SPIM:BSPIM:mosi_pre_reg\/main_9 3.539
macrocell9U(2,3)macrocell18U(2,4) 1\SPIM:BSPIM:cnt_enable\\SPIM:BSPIM:cnt_enable\/clock_0\SPIM:BSPIM:cnt_enable\/q\SPIM:BSPIM:mosi_pre_reg\\SPIM:BSPIM:mosi_pre_reg\/clock_0\SPIM:BSPIM:mosi_pre_reg\/q 1.250
macrocell9U(2,3)macrocell18U(2,4) 1\SPIM:BSPIM:cnt_enable\\SPIM:BSPIM:cnt_enable\/q\SPIM:BSPIM:cnt_enable\/main_9\SPIM:BSPIM:mosi_pre_reg\\SPIM:BSPIM:mosi_pre_reg\/q\SPIM:BSPIM:mosi_pre_reg\/main_9 2.289
macrocell9U(2,3)macrocell18U(2,4) 1\SPIM:BSPIM:cnt_enable\\SPIM:BSPIM:mosi_pre_reg\ HOLD0.000
Clock Skew0.000
+ + + + \SPIM:BSPIM:load_cond\/q + \SPIM:BSPIM:load_cond\/main_8 + 3.547 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -2972,7 +4476,7 @@

Static Timing Analysis

- + @@ -2991,7 +4495,7 @@

Static Timing Analysis

- + @@ -3000,16 +4504,16 @@

Static Timing Analysis

- + - + - + @@ -3033,7 +4537,7 @@

Static Timing Analysis

- + @@ -3052,7 +4556,7 @@

Static Timing Analysis

- + @@ -3067,10 +4571,10 @@

Static Timing Analysis

- + - + @@ -3092,9 +4596,9 @@

Static Timing Analysis

- - - + + + @@ -3113,28 +4617,28 @@

Static Timing Analysis

- - + + - - - + + + - - + + - - - - + + + + - - + + - + @@ -3175,7 +4679,7 @@

Static Timing Analysis

- + @@ -3184,7 +4688,7 @@

Static Timing Analysis

- + @@ -3193,7 +4697,7 @@

Static Timing Analysis

- + @@ -3214,9 +4718,9 @@

Static Timing Analysis

- - - + + + @@ -3235,28 +4739,28 @@

Static Timing Analysis

- - + + - - - + + + - - + + - - - - + + + + - - + + - + @@ -3277,7 +4781,7 @@

Static Timing Analysis

- + @@ -3296,8 +4800,8 @@

Static Timing Analysis

- - + + @@ -3311,7 +4815,7 @@

Static Timing Analysis

- + @@ -3338,7 +4842,7 @@

Static Timing Analysis

- + @@ -3357,7 +4861,7 @@

Static Timing Analysis

- + @@ -3372,11 +4876,11 @@

Static Timing Analysis

- + - - + + @@ -3397,70 +4901,9 @@

Static Timing Analysis

- - - - - - - - - - - - + + + @@ -3479,28 +4922,28 @@

Static Timing Analysis

- - + + - - - + + + - - + + - - - - + + + + - - + + - + @@ -3552,7 +4995,7 @@

Static Timing Analysis

- + - + @@ -3594,7 +5037,7 @@

Static Timing Analysis

- + @@ -3648,7 +5091,7 @@

Static Timing Analysis

- + - - + + @@ -3681,7 +5124,7 @@

Static Timing Analysis

- + @@ -3699,10 +5142,10 @@

Static Timing Analysis

- + - + @@ -3752,9 +5195,9 @@

Static Timing Analysis

- - - + + + - + - + - - - - + + + + - - + + - - - + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell14U(2,5)1\SPIM:BSPIM:load_cond\\SPIM:BSPIM:load_cond\/clock_0\SPIM:BSPIM:load_cond\/q1.250
macrocell14U(2,5)1\SPIM:BSPIM:load_cond\\SPIM:BSPIM:load_cond\/q\SPIM:BSPIM:load_cond\/main_82.297
macrocell14U(2,5)1\SPIM:BSPIM:load_cond\ HOLD 0.000
\SPIM:BSPIM:is_spi_done\/q \SPIM:BSPIM:is_spi_done\/main_93.5603.554
macrocell11macrocell12 U(2,4) 1 \SPIM:BSPIM:is_spi_done\ 1.250
macrocell11macrocell12 U(2,4) 1 \SPIM:BSPIM:is_spi_done\ \SPIM:BSPIM:is_spi_done\/q \SPIM:BSPIM:is_spi_done\/main_92.3102.304
macrocell11macrocell12 U(2,4) 1 \SPIM:BSPIM:is_spi_done\
\SPIM:BSPIM:is_spi_done\/q \SPIM:BSPIM:state_2\/main_93.5603.554
macrocell11macrocell12 U(2,4) 1 \SPIM:BSPIM:is_spi_done\ \SPIM:BSPIM:is_spi_done\ \SPIM:BSPIM:is_spi_done\/q \SPIM:BSPIM:state_2\/main_92.3102.304
macrocell21macrocell22 U(2,4) 1 \SPIM:BSPIM:state_2\
\SPIM:BSPIM:mosi_pre_reg\/q\SPIM:BSPIM:mosi_pre_reg\/main_93.571\SPIM:BSPIM:ld_ident\/q\SPIM:BSPIM:ld_ident\/main_33.559
macrocell17U(2,4)macrocell13U(2,5) 1\SPIM:BSPIM:mosi_pre_reg\\SPIM:BSPIM:mosi_pre_reg\/clock_0\SPIM:BSPIM:mosi_pre_reg\/q\SPIM:BSPIM:ld_ident\\SPIM:BSPIM:ld_ident\/clock_0\SPIM:BSPIM:ld_ident\/q 1.250
macrocell17U(2,4)macrocell13U(2,5) 1\SPIM:BSPIM:mosi_pre_reg\\SPIM:BSPIM:mosi_pre_reg\/q\SPIM:BSPIM:mosi_pre_reg\/main_92.321\SPIM:BSPIM:ld_ident\\SPIM:BSPIM:ld_ident\/q\SPIM:BSPIM:ld_ident\/main_32.309
macrocell17U(2,4)macrocell13U(2,5) 1\SPIM:BSPIM:mosi_pre_reg\\SPIM:BSPIM:ld_ident\ HOLD 0.000
macrocell7U(3,3)U(3,5) 1 Net_439 Net_439/clock_0
macrocell7U(3,3)U(3,5) 1 Net_439 Net_439/q
macrocell7U(3,3)U(3,5) 1 Net_439
\SPIM:BSPIM:ld_ident\/q\SPIM:BSPIM:ld_ident\/main_33.876\SPIM:BSPIM:cnt_enable\/q\SPIM:BSPIM:cnt_enable\/main_93.888
macrocell12U(3,3)macrocell10U(2,5) 1\SPIM:BSPIM:ld_ident\\SPIM:BSPIM:ld_ident\/clock_0\SPIM:BSPIM:ld_ident\/q\SPIM:BSPIM:cnt_enable\\SPIM:BSPIM:cnt_enable\/clock_0\SPIM:BSPIM:cnt_enable\/q 1.250
macrocell12U(3,3)macrocell10U(2,5) 1\SPIM:BSPIM:ld_ident\\SPIM:BSPIM:ld_ident\/q\SPIM:BSPIM:ld_ident\/main_32.626\SPIM:BSPIM:cnt_enable\\SPIM:BSPIM:cnt_enable\/q\SPIM:BSPIM:cnt_enable\/main_92.638
macrocell12U(3,3)macrocell10U(2,5) 1\SPIM:BSPIM:ld_ident\\SPIM:BSPIM:cnt_enable\ HOLD 0.000
\SPIM:BSPIM:load_rx_data\/q \SPIM:BSPIM:sR8:Dp:u0\/f1_load4.1634.146
macrocell14U(2,3)macrocell15U(2,5) 1 \SPIM:BSPIM:load_rx_data\ \SPIM:BSPIM:load_rx_data\/clock_0 \SPIM:BSPIM:load_rx_data\ \SPIM:BSPIM:load_rx_data\/q \SPIM:BSPIM:sR8:Dp:u0\/f1_load2.9132.896
datapathcell1
\SPIM:BSPIM:mosi_from_dp_reg\/q \SPIM:BSPIM:mosi_hs_reg\/main_54.1734.160
macrocell15macrocell16 U(3,4) 1 \SPIM:BSPIM:mosi_from_dp_reg\ \SPIM:BSPIM:mosi_from_dp_reg\ \SPIM:BSPIM:mosi_from_dp_reg\/q \SPIM:BSPIM:mosi_hs_reg\/main_52.9232.910
macrocell16U(3,5)macrocell17U(3,3) 1 \SPIM:BSPIM:mosi_hs_reg\
\SPIM:BSPIM:state_1\/qNet_479/main_24.198
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell20U(2,3)1\SPIM:BSPIM:state_1\\SPIM:BSPIM:state_1\/clock_0\SPIM:BSPIM:state_1\/q1.250
Route1\SPIM:BSPIM:state_1\\SPIM:BSPIM:state_1\/qNet_479/main_22.948
macrocell8U(2,3)1Net_479 HOLD0.000
Clock Skew0.000
-
\SPIM:BSPIM:state_1\/q\SPIM:BSPIM:load_cond\/main_14.198\SPIM:BSPIM:mosi_hs_reg\/q\SPIM:BSPIM:mosi_hs_reg\/main_44.445
macrocell20U(2,3)macrocell17U(3,3) 1\SPIM:BSPIM:state_1\\SPIM:BSPIM:state_1\/clock_0\SPIM:BSPIM:state_1\/q\SPIM:BSPIM:mosi_hs_reg\\SPIM:BSPIM:mosi_hs_reg\/clock_0\SPIM:BSPIM:mosi_hs_reg\/q 1.250
Routemacrocell17U(3,3) 1\SPIM:BSPIM:state_1\\SPIM:BSPIM:state_1\/q\SPIM:BSPIM:load_cond\/main_12.948\SPIM:BSPIM:mosi_hs_reg\\SPIM:BSPIM:mosi_hs_reg\/q\SPIM:BSPIM:mosi_hs_reg\/main_43.195
macrocell13U(2,3)macrocell17U(3,3) 1\SPIM:BSPIM:load_cond\\SPIM:BSPIM:mosi_hs_reg\ HOLD 0.000
m_miso_pin(0)_PAD \SPIM:BSPIM:sR8:Dp:u0\/route_si41.67741.678
@@ -3579,7 +5022,7 @@

Static Timing Analysis

0.000
iocell13iocell14 P0[0] 1 m_miso_pin(0) Net_20 m_miso_pin(0)/fb \SPIM:BSPIM:sR8:Dp:u0\/route_si7.1877.188
datapathcell1
\UART_1:BUART:txn\/q Tx_1(0)_PAD33.32431.436
@@ -3666,8 +5109,8 @@

Static Timing Analysis

macrocell32U(3,5)macrocell37U(3,3) 1 \UART_1:BUART:txn\ \UART_1:BUART:txn\/clock_0 \UART_1:BUART:txn\ \UART_1:BUART:txn\/q Net_234/main_04.5213.195
macrocell1 Net_234 Net_234/q Tx_1(0)/pin_input6.3595.797
iocell5iocell6 P3[7] 1 Tx_1(0)
\SS:Async:ctrl_reg\/control_1Pin_2(0)_PAD33.212\SS:Async:ctrl_reg\/control_2Pin_3(0)_PAD32.395
@@ -3773,56 +5216,143 @@

Static Timing Analysis

controlcell1U(3,3)U(3,5) 1 \SS:Async:ctrl_reg\ \SS:Async:ctrl_reg\/busclk\SS:Async:ctrl_reg\/control_1\SS:Async:ctrl_reg\/control_2 2.580
Route 1mywire_1_1\SS:Async:ctrl_reg\/control_1Net_422/main_12.791mywire_1_2\SS:Async:ctrl_reg\/control_2Net_428/main_12.792
macrocell4U(3,3)macrocell6U(3,5) 1Net_422Net_422/main_1Net_422/qNet_428Net_428/main_1Net_428/q 3.350
Route 1Net_422Net_422/qPin_2(0)/pin_input7.423Net_428Net_428/qPin_3(0)/pin_input6.361
iocell3P3[2]1Pin_3(0)Pin_3(0)/pin_inputPin_3(0)/pad_out17.312
Route1Pin_3(0)_PADPin_3(0)/pad_outPin_3(0)_PAD0.000
Clock Clock path delay0.000
+ + + + \SS:Async:ctrl_reg\/control_0 + Pin_1(0)_PAD + 32.006 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - - - + + + + - - - + + + @@ -3839,9 +5369,9 @@

Static Timing Analysis

- - - + + + - + - + - - - - + + + + - - + + - - - + + + - - - - + + + + - - + + - - - - + + + + - - - + + + @@ -3926,9 +5456,9 @@

Static Timing Analysis

- - - + + + - + - + - - - - + + + + - - + + - - - + + + - - - - + + + + - - + + - - - - + + + + - - - + + + @@ -4013,9 +5543,9 @@

Static Timing Analysis

- + - + - + - + - - + + - + - + @@ -4066,7 +5596,7 @@

Static Timing Analysis

- + @@ -4121,7 +5651,7 @@

Static Timing Analysis

- + - - + + @@ -4154,11 +5684,11 @@

Static Timing Analysis

- + - + @@ -4172,10 +5702,10 @@

Static Timing Analysis

- + - + @@ -4207,8 +5737,8 @@

Static Timing Analysis

- - + + - + @@ -4240,43 +5770,43 @@

Static Timing Analysis

- + - - + + - - - + + + - - - - + + + + - - + + - - - - + + + + - - - + + + @@ -4295,7 +5825,7 @@

Static Timing Analysis

- + - + @@ -4332,7 +5862,7 @@

Static Timing Analysis

- + @@ -4346,7 +5876,7 @@

Static Timing Analysis

- + @@ -4381,8 +5911,8 @@

Static Timing Analysis

- - + + - + @@ -4414,43 +5944,130 @@

Static Timing Analysis

- + - - + + - - - + + + - - - - + + + + - - + + - - - - + + + + - - - + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
controlcell1U(3,5)1\SS:Async:ctrl_reg\\SS:Async:ctrl_reg\/busclk\SS:Async:ctrl_reg\/control_02.580
Route1mywire_1_0\SS:Async:ctrl_reg\/control_0Net_419/main_32.809
macrocell3U(3,5)1Net_419Net_419/main_3Net_419/q3.350
Route1Net_419Net_419/qPin_1(0)/pin_input6.356
iocell2P3[1]iocell1P3[0] 1Pin_2(0)Pin_2(0)/pin_inputPin_2(0)/pad_out17.068Pin_1(0)Pin_1(0)/pin_inputPin_1(0)/pad_out16.911
Route 1Pin_2(0)_PADPin_2(0)/pad_outPin_2(0)_PADPin_1(0)_PADPin_1(0)/pad_outPin_1(0)_PAD 0.000
\SS:Async:ctrl_reg\/control_1Pin_1(0)_PAD33.047\SS:Async:ctrl_reg\/control_2Pin_5(0)_PAD31.882
@@ -3860,56 +5390,56 @@

Static Timing Analysis

controlcell1U(3,3)U(3,5) 1 \SS:Async:ctrl_reg\ \SS:Async:ctrl_reg\/busclk\SS:Async:ctrl_reg\/control_1\SS:Async:ctrl_reg\/control_2 2.580
Route 1mywire_1_1\SS:Async:ctrl_reg\/control_1Net_419/main_12.795mywire_1_2\SS:Async:ctrl_reg\/control_2Net_585/main_12.792
macrocell3U(3,3)macrocell9U(3,5) 1Net_419Net_419/main_1Net_419/qNet_585Net_585/main_1Net_585/q 3.350
Route 1Net_419Net_419/qPin_1(0)/pin_input7.411Net_585Net_585/qPin_5(0)/pin_input6.321
iocell1P3[0]iocell5P3[4] 1Pin_1(0)Pin_1(0)/pin_inputPin_1(0)/pad_out16.911Pin_5(0)Pin_5(0)/pin_inputPin_5(0)/pad_out16.839
Route 1Pin_1(0)_PADPin_1(0)/pad_outPin_1(0)_PADPin_5(0)_PADPin_5(0)/pad_outPin_5(0)_PAD 0.000
\SS:Async:ctrl_reg\/control_1Pin_3(0)_PAD32.781\SS:Async:ctrl_reg\/control_2Pin_2(0)_PAD31.296
@@ -3947,56 +5477,56 @@

Static Timing Analysis

controlcell1U(3,3)U(3,5) 1 \SS:Async:ctrl_reg\ \SS:Async:ctrl_reg\/busclk\SS:Async:ctrl_reg\/control_1\SS:Async:ctrl_reg\/control_2 2.580
Route 1mywire_1_1\SS:Async:ctrl_reg\/control_1Net_428/main_12.791mywire_1_2\SS:Async:ctrl_reg\/control_2Net_422/main_12.792
macrocell6U(3,3)macrocell4U(3,5) 1Net_428Net_428/main_1Net_428/qNet_422Net_422/main_1Net_422/q 3.350
Route 1Net_428Net_428/qPin_3(0)/pin_input6.748Net_422Net_422/qPin_2(0)/pin_input5.506
iocell3P3[2]iocell2P3[1] 1Pin_3(0)Pin_3(0)/pin_inputPin_3(0)/pad_out17.312Pin_2(0)Pin_2(0)/pin_inputPin_2(0)/pad_out17.068
Route 1Pin_3(0)_PADPin_3(0)/pad_outPin_3(0)_PADPin_2(0)_PADPin_2(0)/pad_outPin_2(0)_PAD 0.000
\SS:Async:ctrl_reg\/control_1\SS:Async:ctrl_reg\/control_2 Pin_4(0)_PAD31.44031.158
@@ -4034,25 +5564,25 @@

Static Timing Analysis

controlcell1U(3,3)U(3,5) 1 \SS:Async:ctrl_reg\ \SS:Async:ctrl_reg\/busclk\SS:Async:ctrl_reg\/control_1\SS:Async:ctrl_reg\/control_2 2.580
Route 1mywire_1_1\SS:Async:ctrl_reg\/control_1mywire_1_2\SS:Async:ctrl_reg\/control_2 Net_425/main_12.7912.792
macrocell5U(3,3)U(3,5) 1 Net_425 Net_425/main_1 Net_425 Net_425/q Pin_4(0)/pin_input6.6136.330
iocell4
\SPIM:BSPIM:mosi_hs_reg\/q m_mosi_pin(0)_PAD36.07435.028
@@ -4139,8 +5669,8 @@

Static Timing Analysis

macrocell16U(3,5)macrocell17U(3,3) 1 \SPIM:BSPIM:mosi_hs_reg\ \SPIM:BSPIM:mosi_hs_reg\/clock_0 \SPIM:BSPIM:mosi_hs_reg\ \SPIM:BSPIM:mosi_hs_reg\/q Net_30/main_15.2575.244
macrocell2U(3,3)U(3,5) 1 Net_30 Net_30/main_1 Net_30 Net_30/q m_mosi_pin(0)/pin_input8.2467.213
iocell14iocell15 P0[5] 1 m_mosi_pin(0)
Net_439/qPin_2(0)_PAD31.687Pin_3(0)_PAD30.869
@@ -4227,7 +5757,7 @@

Static Timing Analysis

macrocell7U(3,3)U(3,5) 1 Net_439 Net_439/clock_0 1 Net_439 Net_439/qNet_422/main_0Net_428/main_0 2.596
macrocell4U(3,3)macrocell6U(3,5) 1Net_422Net_422/main_0Net_422/qNet_428Net_428/main_0Net_428/q 3.350
Route 1Net_422Net_422/qPin_2(0)/pin_input7.423Net_428Net_428/qPin_3(0)/pin_input6.361
iocell2P3[1]iocell3P3[2] 1Pin_2(0)Pin_2(0)/pin_inputPin_2(0)/pad_out17.068Pin_3(0)Pin_3(0)/pin_inputPin_3(0)/pad_out17.312
Route 1Pin_2(0)_PADPin_2(0)/pad_outPin_2(0)_PADPin_3(0)_PADPin_3(0)/pad_outPin_3(0)_PAD 0.000
Net_439/q Pin_1(0)_PAD31.51230.457
@@ -4314,7 +5844,7 @@

Static Timing Analysis

macrocell7U(3,3)U(3,5) 1 Net_439 Net_439/clock_0
macrocell3U(3,3)U(3,5) 1 Net_419 Net_419/main_0 Net_419 Net_419/q Pin_1(0)/pin_input7.4116.356
iocell1
Net_439/qPin_3(0)_PAD31.256Pin_5(0)_PAD30.356
@@ -4401,7 +5931,7 @@

Static Timing Analysis

macrocell7U(3,3)U(3,5) 1 Net_439 Net_439/clock_0 1 Net_439 Net_439/qNet_428/main_0Net_585/main_0 2.596
macrocell6U(3,3)macrocell9U(3,5) 1Net_428Net_428/main_0Net_428/qNet_585Net_585/main_0Net_585/q 3.350
Route 1Net_428Net_428/qPin_3(0)/pin_input6.748Net_585Net_585/qPin_5(0)/pin_input6.321
iocell3P3[2]iocell5P3[4] 1Pin_3(0)Pin_3(0)/pin_inputPin_3(0)/pad_out17.312Pin_5(0)Pin_5(0)/pin_inputPin_5(0)/pad_out16.839
Route 1Pin_3(0)_PADPin_3(0)/pad_outPin_3(0)_PADPin_5(0)_PADPin_5(0)/pad_outPin_5(0)_PAD0.000
Clock Clock path delay0.000
+ + + + Net_439/q + Pin_2(0)_PAD + 29.770 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -4469,7 +6086,7 @@

Static Timing Analysis

- + - + @@ -4506,7 +6123,7 @@

Static Timing Analysis

- + @@ -4520,7 +6137,7 @@

Static Timing Analysis

- + @@ -4556,7 +6173,7 @@

Static Timing Analysis

- + - + @@ -4589,10 +6206,10 @@

Static Timing Analysis

- + - + diff --git a/PSOC5_SPI_LSM303D.cydsn/TopDesign/TopDesign.cysch b/PSOC5_SPI_LSM303D.cydsn/TopDesign/TopDesign.cysch index 60991c682760a620f40b7011ad99be7edfbfbbd1..d0061095a4a3a6866d26530073907a77cefe3c84 100644 GIT binary patch delta 22572 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 diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Cm3RealView.scat b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Cm3RealView.scat index 716fd4c..968bf68 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Cm3RealView.scat +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Cm3RealView.scat @@ -1,6 +1,6 @@ ;******************************************************************************** -;* File Name: Cm3RealView.scat -;* Version 3.30 +;* File Name: Cm3RealView.scat +;* Version 3.40 ;* ;* Description: ;* This Linker Descriptor file describes the memory layout of the PSoC5 @@ -21,9 +21,9 @@ ;* ;* ;******************************************************************************** -;* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. -;* You may use this file only in accordance with the license, terms, conditions, -;* disclaimers, and limitations in the end user license agreement accompanying +;* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. +;* You may use this file only in accordance with the license, terms, conditions, +;* disclaimers, and limitations in the end user license agreement accompanying ;* the software package with which this file was provided. ;********************************************************************************/ @@ -50,6 +50,11 @@ LOAD_ROM 0 (262144 - 0) * (.ramvectors) } + NOINIT_DATA +0 UNINIT + { + * (.noinit) + } + DATA +0 { * (+RW, +ZI) diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Cm3Start.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Cm3Start.c index db78216..f7d4c9e 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Cm3Start.c +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Cm3Start.c @@ -1,12 +1,12 @@ /******************************************************************************* * File Name: Cm3Start.c -* Version 3.30 +* Version 3.40 * * Description: * Startup code for the ARM CM3. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. @@ -19,9 +19,9 @@ #include "CyDmac.h" #include "cyfitter.h" - #define NUM_INTERRUPTS 32u #define NUM_VECTORS (CYINT_IRQ_BASE+NUM_INTERRUPTS) +#define NUM_ROM_VECTORS 4u #define NVIC_APINT ((reg32 *) CYREG_NVIC_APPLN_INTR) #define NVIC_CFG_CTRL ((reg32 *) CYREG_NVIC_CFG_CONTROL) #define NVIC_APINT_PRIGROUP_3_5 0x00000400u /* Priority group 3.5 split */ @@ -37,10 +37,20 @@ CY_ISR(IntDefaultHandler); void Reset(void); CY_ISR(IntDefaultHandler); +#if defined(__ARMCC_VERSION) + #define INITIAL_STACK_POINTER (cyisraddress)(uint32)&Image$$ARM_LIB_STACK$$ZI$$Limit +#elif defined (__GNUC__) + #define INITIAL_STACK_POINTER __cs3_stack +#endif /* (__ARMCC_VERSION) */ + +/* Global variables */ +CY_NOINIT static uint32 cySysNoInitDataValid; + /******************************************************************************* * Default Ram Interrupt Vector table storage area. Must be 256-byte aligned. *******************************************************************************/ + __attribute__ ((section(".ramvectors"))) #if defined(__ARMCC_VERSION) __align(256) @@ -53,6 +63,7 @@ cyisraddress CyRamVectors[NUM_VECTORS]; /******************************************************************************* * Function Name: IntDefaultHandler ******************************************************************************** +* * Summary: * This function is called for all interrupts, other than reset, that get * called before the system is setup. @@ -79,6 +90,7 @@ CY_ISR(IntDefaultHandler) } } + #if defined(__ARMCC_VERSION) /* Local function for the device reset. */ @@ -93,69 +105,11 @@ extern uint32 Image$$ARM_LIB_STACK$$ZI$$Limit; /* RealView C Library initialization. */ extern int __main(void); -/******************************************************************************* -* -* Default Rom Interrupt Vector table. -* -*******************************************************************************/ -#pragma diag_suppress 1296 -__attribute__ ((section(".romvectors"))) -const cyisraddress RomVectors[NUM_VECTORS] = -{ - (cyisraddress)(uint32)&Image$$ARM_LIB_STACK$$ZI$$Limit, /* The initial stack pointer 0 */ - (cyisraddress)Reset, /* The reset handler 1 */ - IntDefaultHandler, /* The NMI handler 2 */ - IntDefaultHandler, /* The hard fault handler 3 */ - IntDefaultHandler, /* The MPU fault handler 4 */ - IntDefaultHandler, /* The bus fault handler 5 */ - IntDefaultHandler, /* The usage fault handler 6 */ - IntDefaultHandler, /* Reserved 7 */ - IntDefaultHandler, /* Reserved 8 */ - IntDefaultHandler, /* Reserved 9 */ - IntDefaultHandler, /* Reserved 10 */ - IntDefaultHandler, /* SVCall handler 11 */ - IntDefaultHandler, /* Debug monitor handler 12 */ - IntDefaultHandler, /* Reserved 13 */ - IntDefaultHandler, /* The PendSV handler 14 */ - IntDefaultHandler, /* The SysTick handler 15 */ - IntDefaultHandler, /* External Interrupt(0) 16 */ - IntDefaultHandler, /* External Interrupt(1) 17 */ - IntDefaultHandler, /* External Interrupt(2) 18 */ - IntDefaultHandler, /* External Interrupt(3) 19 */ - IntDefaultHandler, /* External Interrupt(4) 20 */ - IntDefaultHandler, /* External Interrupt(5) 21 */ - IntDefaultHandler, /* External Interrupt(6) 22 */ - IntDefaultHandler, /* External Interrupt(7) 23 */ - IntDefaultHandler, /* External Interrupt(8) 24 */ - IntDefaultHandler, /* External Interrupt(9) 25 */ - IntDefaultHandler, /* External Interrupt(A) 26 */ - IntDefaultHandler, /* External Interrupt(B) 27 */ - IntDefaultHandler, /* External Interrupt(C) 28 */ - IntDefaultHandler, /* External Interrupt(D) 29 */ - IntDefaultHandler, /* External Interrupt(E) 30 */ - IntDefaultHandler, /* External Interrupt(F) 31 */ - IntDefaultHandler, /* External Interrupt(10) 32 */ - IntDefaultHandler, /* External Interrupt(11) 33 */ - IntDefaultHandler, /* External Interrupt(12) 34 */ - IntDefaultHandler, /* External Interrupt(13) 35 */ - IntDefaultHandler, /* External Interrupt(14) 36 */ - IntDefaultHandler, /* External Interrupt(15) 37 */ - IntDefaultHandler, /* External Interrupt(16) 38 */ - IntDefaultHandler, /* External Interrupt(17) 39 */ - IntDefaultHandler, /* External Interrupt(18) 40 */ - IntDefaultHandler, /* External Interrupt(19) 41 */ - IntDefaultHandler, /* External Interrupt(1A) 42 */ - IntDefaultHandler, /* External Interrupt(1B) 43 */ - IntDefaultHandler, /* External Interrupt(1C) 44 */ - IntDefaultHandler, /* External Interrupt(1D) 45 */ - IntDefaultHandler, /* External Interrupt(1E) 46 */ - IntDefaultHandler /* External Interrupt(1F) 47 */ -}; - /******************************************************************************* * Function Name: Reset ******************************************************************************** +* * Summary: * This function handles the reset interrupt for the RVDS/MDK toolchains. * This is the first bit of code that is executed at startup. @@ -180,14 +134,14 @@ __asm void Reset(void) #if(CYDEV_PROJ_TYPE != CYDEV_PROJ_TYPE_LOADABLE) #if(CYDEV_DEBUGGING_ENABLE) - ldr r3, =0x400046e8 /* CYDEV_DEBUG_ENABLE_REGISTER */ + ldr r3, =0x400046e8 /* CYDEV_DEBUG_ENABLE_REGISTER */ ldrb r4, [r3, #0] orr r4, r4, #01 strb r4, [r3, #0] debugEnabled #endif /* (CYDEV_DEBUGGING_ENABLE) */ - ldr r3, =0x400046f8 /* CYREG_RESET_SR0 */ + ldr r3, =0x400046fa /* CYREG_RESET_SR0 */ ldrb r2, [r3, #0] #endif /* (CYDEV_PROJ_TYPE != CYDEV_PROJ_TYPE_LOADABLE) */ @@ -209,6 +163,7 @@ debugEnabled /******************************************************************************* * Function Name: $Sub$$main ******************************************************************************** +* * Summary: * This function is called imediatly before the users main * @@ -232,15 +187,14 @@ void $Sub$$main(void) #elif defined(__GNUC__) -extern uint32 __cs3_interrupt_vector; +extern void __cs3_stack(void); extern void __cs3_start_c(void); -#define RomVectors (cyisraddress)(&__cs3_interrupt_vector) - /******************************************************************************* * Function Name: Reset ******************************************************************************** +* * Summary: * This function handles the reset interrupt for the GCC toolchain. This is the * first bit of code that is executed at startup. @@ -284,9 +238,33 @@ void Reset(void) #endif /* __GNUC__ */ + +/******************************************************************************* +* +* Default Rom Interrupt Vector table. +* +*******************************************************************************/ +#if defined(__ARMCC_VERSION) + #pragma diag_suppress 1296 +#endif +__attribute__ ((section(".romvectors"))) +const cyisraddress RomVectors[NUM_ROM_VECTORS] = +{ + #if defined(__ARMCC_VERSION) + INITIAL_STACK_POINTER, /* The initial stack pointer 0 */ + #elif defined (__GNUC__) + &INITIAL_STACK_POINTER, /* The initial stack pointer 0 */ + #endif /* (__ARMCC_VERSION) */ + (cyisraddress)&Reset, /* The reset handler 1 */ + &IntDefaultHandler, /* The NMI handler 2 */ + &IntDefaultHandler, /* The hard fault handler 3 */ +}; + + /******************************************************************************* * Function Name: initialize_psoc ******************************************************************************** +* * Summary: * This function used to initialize the PSoC chip before calling main. * @@ -314,7 +292,7 @@ void initialize_psoc(void) /* Set Ram interrupt vectors to default functions. */ for(i = 0u; i < NUM_VECTORS; i++) { - CyRamVectors[i] = RomVectors[i]; + CyRamVectors[i] = (i < NUM_ROM_VECTORS) ? RomVectors[i] : &IntDefaultHandler; } /* Was stored in CFGMEM to avoid being cleared while SRAM gets cleared */ @@ -332,6 +310,9 @@ void initialize_psoc(void) CyDmacConfigure(); #endif /* (0u != DMA_CHANNELS_USED__MASK0) */ + + /* Actually, no need to clean this variable, just to make compiler happy. */ + cySysNoInitDataValid = 0u; } diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyBootAsmGnu.s b/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyBootAsmGnu.s index 64404e9..062dba4 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyBootAsmGnu.s +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyBootAsmGnu.s @@ -1,14 +1,14 @@ /******************************************************************************* * File Name: CyBootAsmGnu.s -* Version 3.30 +* Version 3.40 * * Description: * Assembly routines for GNU as. * ******************************************************************************** -* Copyright 2010-2012, Cypress Semiconductor Corporation. All rights reserved. -* You may use this file only in accordance with the license, terms, conditions, -* disclaimers, and limitations in the end user license agreement accompanying +* Copyright 2010-2013, Cypress Semiconductor Corporation. All rights reserved. +* You may use this file only in accordance with the license, terms, conditions, +* disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. *******************************************************************************/ diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyBootAsmRv.s b/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyBootAsmRv.s index 1109303..3b362bc 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyBootAsmRv.s +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyBootAsmRv.s @@ -1,14 +1,14 @@ ;------------------------------------------------------------------------------- ; FILENAME: CyBootAsmRv.s -; Version 3.30 +; Version 3.40 ; ; DESCRIPTION: ; Assembly routines for RealView. ; ;------------------------------------------------------------------------------- -; Copyright 2010-2012, Cypress Semiconductor Corporation. All rights reserved. -; You may use this file only in accordance with the license, terms, conditions, -; disclaimers, and limitations in the end user license agreement accompanying +; Copyright 2010-2013, Cypress Semiconductor Corporation. All rights reserved. +; You may use this file only in accordance with the license, terms, conditions, +; disclaimers, and limitations in the end user license agreement accompanying ; the software package with which this file was provided. ;------------------------------------------------------------------------------- diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyDmac.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyDmac.c index 763431b..1ed276f 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyDmac.c +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyDmac.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: CyDmac.c -* Version 3.30 +* Version 3.40 * * Description: * Provides an API for the DMAC component. The API includes functions for the @@ -21,7 +21,7 @@ * The user can over write this once the TD is allocated. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. @@ -570,7 +570,8 @@ cystatus CyDmaChGetRequest(uint8 chHandle) if(chHandle < CY_DMA_NUMBEROF_CHANNELS) { - status = (cystatus) (CY_DMA_CH_STRUCT_PTR[chHandle].action[0u] & (CY_DMA_CPU_REQ | CY_DMA_CPU_TERM_TD | CY_DMA_CPU_TERM_CHAIN)); + status = (cystatus) ((uint32)CY_DMA_CH_STRUCT_PTR[chHandle].action[0u] & + (uint32)(CY_DMA_CPU_REQ | CY_DMA_CPU_TERM_TD | CY_DMA_CPU_TERM_CHAIN)); } return(status); @@ -818,32 +819,36 @@ uint8 CyDmaTdFreeCount(void) * uint8 nextTd: * Zero based index of the next Transfer Descriptor in the TD chain. Zero is a * valid pointer to the next TD; DMA_END_CHAIN_TD is the end of the chain. +* DMA_DISABLE_TD indicates an end to the chain and the DMA is disabled. No +* further TDs are fetched. DMA_DISABLE_TD is only supported on PSoC3 and +* PSoC 5LP silicons. * * uint8 configuration: * Stores the Bit field of configuration bits. * -* TD_SWAP_EN - Perform endian swap +* CY_DMA_TD_SWAP_EN - Perform endian swap * -* TD_SWAP_SIZE4 - Swap size = 4 bytes +* CY_DMA_TD_SWAP_SIZE4 - Swap size = 4 bytes * -* TD_AUTO_EXEC_NEXT - The next TD in the chain will trigger automatically -* when the current TD completes. +* CY_DMA_TD_AUTO_EXEC_NEXT - The next TD in the chain will trigger +* automatically when the current TD completes. * -* TD_TERMIN_EN - Terminate this TD if a positive edge on the trq input -* line occurs. The positive edge must occur during a -* burst. That is the only time the DMAC will listen for -* it. +* CY_DMA_TD_TERMIN_EN - Terminate this TD if a positive edge on the trq +* input line occurs. The positive edge must occur +* during a burst. That is the only time the DMAC +* will listen for it. * -* DMA__TD_TERMOUT_EN - When this TD completes, the TERMOUT signal will -* generate a pulse. Note that this option is instance -* specific with the instance name followed by two -* underscores. In this example, the instance name is DMA. +* DMA__TD_TERMOUT_EN - When this TD completes, the TERMOUT signal will +* generate a pulse. Note that this option is +* instance specific with the instance name followed +* by two underscores. In this example, the instance +* name is DMA. * -* TD_INC_DST_ADR - Increment DST_ADR according to the size of each data -* transaction in the burst. +* CY_DMA_TD_INC_DST_ADR - Increment DST_ADR according to the size of each +* data transaction in the burst. * -* TD_INC_SRC_ADR - Increment SRC_ADR according to the size of each data -* transaction in the burst. +* CY_DMA_TD_INC_SRC_ADR - Increment SRC_ADR according to the size of each +* data transaction in the burst. * * Return: * CYRET_SUCCESS if successful. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyDmac.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyDmac.h index 0f42fdf..b7aaef1 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyDmac.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyDmac.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: CyDmac.h -* Version 3.30 +* Version 3.40 * * Description: * Provides the function definitions for the DMA Controller. @@ -10,7 +10,7 @@ * System Reference Guide provided with PSoC Creator. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. @@ -109,9 +109,9 @@ typedef struct dmac_tdmem2_struct #define CY_DMA_INVALID_TD 0xFFu /* Invalid TD */ #define CY_DMA_END_CHAIN_TD 0xFFu /* End of chain TD */ -#if(CY_PSOC3) +#if(CY_PSOC3 || CY_PSOC5LP) #define CY_DMA_DISABLE_TD 0xFEu -#endif /* (CY_PSOC3) */ +#endif /* (CY_PSOC3 || CY_PSOC5LP) */ #define CY_DMA_TD_SIZE 0x08u @@ -195,9 +195,9 @@ typedef struct dmac_tdmem2_struct #define DMAC_UNPOP_ACC (CY_DMA_UNPOP_ACC) #define DMAC_PERIPH_ERR (CY_DMA_PERIPH_ERR) #define ROUND_ROBIN_ENABLE (CY_DMA_ROUND_ROBIN_ENABLE) -#if(CY_PSOC3) +#if(CY_PSOC3 || CY_PSOC5LP) #define DMA_DISABLE_TD (CY_DMA_DISABLE_TD) -#endif /* (CY_PSOC3) */ +#endif /* (CY_PSOC3 || CY_PSOC5LP) */ #define DMAC_CFG (CY_DMA_CFG_PTR) #define DMAC_ERR (CY_DMA_ERR_PTR) diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyFlash.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyFlash.c index e216c45..939ff7c 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyFlash.c +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyFlash.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: CyFlash.c -* Version 3.30 +* Version 3.40 * * Description: * Provides an API for the FLASH/EEPROM. @@ -13,7 +13,7 @@ * System Reference Guide provided with PSoC Creator. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. @@ -364,7 +364,7 @@ cystatus CySetFlashEEBuffer(uint8 * buffer) /* Copy the rowdata to the temporary buffer. */ #if(CY_PSOC3) - (void) memcpy((void *) rowBuffer, (const void *) rowData, (int16) CYDEV_FLS_ROW_SIZE); + (void) memcpy((void *) rowBuffer, (void *)((uint32) rowData), (int16) CYDEV_FLS_ROW_SIZE); #else (void) memcpy((void *) rowBuffer, (const void *) rowData, CYDEV_FLS_ROW_SIZE); #endif /* (CY_PSOC3) */ @@ -403,15 +403,19 @@ cystatus CySetFlashEEBuffer(uint8 * buffer) * CYRET_UNKNOWN if there was an SPC error. * *******************************************************************************/ - cystatus CyWriteRowConfig(uint8 arrayId, uint16 rowAddress, uint8 * rowECC) + cystatus CyWriteRowConfig(uint8 arrayId, uint16 rowAddress, const uint8 * rowECC) { uint32 offset; uint16 i; cystatus status; /* Read the existing flash data. */ - offset = CYDEV_FLS_BASE + ((uint32) arrayId * CYDEV_FLS_SECTOR_SIZE) + + offset = ((uint32) arrayId * CYDEV_FLS_SECTOR_SIZE) + ((uint32) rowAddress * CYDEV_FLS_ROW_SIZE); + + #if (CYDEV_FLS_BASE != 0u) + offset += CYDEV_FLS_BASE; + #endif for (i = 0u; i < CYDEV_FLS_ROW_SIZE; i++) { @@ -419,9 +423,9 @@ cystatus CySetFlashEEBuffer(uint8 * buffer) } #if(CY_PSOC3) - (void) memcpy((void *) &rowBuffer[CYDEV_FLS_ROW_SIZE], (void *) rowECC, (int16) CYDEV_ECC_ROW_SIZE); + (void) memcpy((void *) &rowBuffer[CYDEV_FLS_ROW_SIZE], (void *)((uint32)rowECC), (int16) CYDEV_ECC_ROW_SIZE); #else - (void) memcpy((void *) &rowBuffer[CYDEV_FLS_ROW_SIZE], (void *) rowECC, CYDEV_ECC_ROW_SIZE); + (void) memcpy((void *) &rowBuffer[CYDEV_FLS_ROW_SIZE], (const void *) rowECC, CYDEV_ECC_ROW_SIZE); #endif /* (CY_PSOC3) */ status = CyWriteRowFull(arrayId, rowAddress, rowBuffer, CYDEV_FLS_ROW_SIZE + CYDEV_ECC_ROW_SIZE); diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyFlash.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyFlash.h index ee767ef..18c5d4a 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyFlash.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyFlash.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: CyFlash.h -* Version 3.30 +* Version 3.40 * * Description: * Provides the function definitions for the FLASH/EEPROM. @@ -10,7 +10,7 @@ * System Reference Guide provided with PSoC Creator. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. @@ -68,7 +68,8 @@ cystatus CyWriteRowFull(uint8 arrayId, uint16 rowNumber, const uint8 * rowData, cystatus CyWriteRowData(uint8 arrayId, uint16 rowAddress, const uint8 * rowData); #if ((CYDEV_ECC_ENABLE == 0u) && (CYDEV_CONFIGURATION_ECC == 0u)) - cystatus CyWriteRowConfig(uint8 arrayId, uint16 rowAddress, uint8 * rowECC) ; + cystatus CyWriteRowConfig(uint8 arrayId, uint16 rowAddress, const uint8 * rowECC) \ + ; #endif /* ((CYDEV_ECC_ENABLE == 0u) && (CYDEV_CONFIGURATION_ECC == 0u)) */ void CyFlash_SetWaitCycles(uint8 freq) ; diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyLib.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyLib.c index 0f59206..0c52ec9 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyLib.c +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyLib.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: CyLib.c -* Version 3.30 +* Version 3.40 * * Description: * Provides system API for the clocking, interrupts and watchdog timer. @@ -10,7 +10,7 @@ * System Reference Guide provided with PSoC Creator. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyLib.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyLib.h index fd2d94a..b036110 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyLib.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/CyLib.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: CyLib.h -* Version 3.30 +* Version 3.40 * * Description: * Provides the function definitions for the system, clocking, interrupts and @@ -11,7 +11,7 @@ * Guide provided with PSoC Creator. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. @@ -803,7 +803,7 @@ uint8 CyVdRealTimeStatus(void) ; #define INTERRUPT_CSR ((reg8 *) CYREG_INTC_CSR_EN) #define DISABLE_IRQ_SET ((uint8)(0x01u << 1u)) /* INTC_CSR_EN */ #define INTERRUPT_DISABLE_IRQ {*INTERRUPT_CSR |= DISABLE_IRQ_SET;} - #define INTERRUPT_ENABLE_IRQ {*INTERRUPT_CSR &= (uint8)(~DISABLE_IRQ_SET);} + #define INTERRUPT_ENABLE_IRQ {*INTERRUPT_CSR = (uint8)(~DISABLE_IRQ_SET);} #endif /* (CY_PSOC3) */ diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/CySpc.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/CySpc.c index 1baf598..6824a20 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/CySpc.c +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/CySpc.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: CySpc.c -* Version 3.30 +* Version 3.40 * * Description: * Provides an API for the System Performance Component. @@ -8,7 +8,7 @@ * application. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/CySpc.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/CySpc.h index f2c0c02..afdf79d 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/CySpc.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/CySpc.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: CySpc.c -* Version 3.30 +* Version 3.40 * * Description: * Provides definitions for the System Performance Component API. @@ -8,7 +8,7 @@ * application. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD.c index 0c7c2ce..a88cd76 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD.c +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: LCD.c -* Version 1.80 +* Version 1.90 * * Description: * This file provides source code for the Character LCD component's API. @@ -56,13 +56,13 @@ void LCD_Init(void) { /* INIT CODE */ CyDelay(40u); /* Delay 40 ms */ - LCD_WrCntrlNib(LCD_DISPLAY_8_BIT_INIT); /* Selects 8-bit mode */ + LCD_WrCntrlNib(LCD_DISPLAY_8_BIT_INIT); /* Selects 8-bit mode */ CyDelay(5u); /* Delay 5 ms */ - LCD_WrCntrlNib(LCD_DISPLAY_8_BIT_INIT); /* Selects 8-bit mode */ + LCD_WrCntrlNib(LCD_DISPLAY_8_BIT_INIT); /* Selects 8-bit mode */ CyDelay(15u); /* Delay 15 ms */ - LCD_WrCntrlNib(LCD_DISPLAY_8_BIT_INIT); /* Selects 8-bit mode */ + LCD_WrCntrlNib(LCD_DISPLAY_8_BIT_INIT); /* Selects 8-bit mode */ CyDelay(1u); /* Delay 1 ms */ - LCD_WrCntrlNib(LCD_DISPLAY_4_BIT_INIT); /* Selects 4-bit mode */ + LCD_WrCntrlNib(LCD_DISPLAY_4_BIT_INIT); /* Selects 4-bit mode */ CyDelay(5u); /* Delay 5 ms */ LCD_WriteControl(LCD_CURSOR_AUTO_INCR_ON); /* Incr Cursor After Writes */ @@ -358,7 +358,7 @@ void LCD_IsReady(void) #if (CY_PSOC4) /* Mask off data pins to clear old values out */ - value = LCD_PORT_PC_REG & ((uint8)(~ LCD_DM_DATA_MASK)); + value = LCD_PORT_PC_REG & ((uint32) (~ LCD_DM_DATA_MASK)); /* Load in high Z values for data pins, others unchanged */ LCD_PORT_PC_REG = value | LCD_HIGH_Z_DATA_DM; @@ -406,6 +406,9 @@ void LCD_IsReady(void) /* Set enable low */ LCD_PORT_DR_REG &= ((uint8)(~LCD_E)); + /* This gives a true delay between disably Enable bit and poling Ready bit */ + CyDelayUs(0u); + /* Extract ready bit */ value &= LCD_READY_BIT; diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD.h index 0b0bda9..261343e 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: LCD.h -* Version 1.80 +* Version 1.90 * * Description: * This header file contains registers and constants associated with the @@ -185,26 +185,30 @@ extern uint8 const CYCODE LCD_customFonts[64u]; * Registers ***************************************/ -/* Port Register Definitions */ -#define LCD_PORT_DR_REG (*(reg8 *) LCD_LCDPort__DR) /* Data Output Register */ -#define LCD_PORT_DR_PTR ( (reg8 *) LCD_LCDPort__DR) -#define LCD_PORT_PS_REG (*(reg8 *) LCD_LCDPort__PS) /* Pin State Register */ -#define LCD_PORT_PS_PTR ( (reg8 *) LCD_LCDPort__PS) - /* Device specific registers */ #if (CY_PSOC4) - #define LCD_PORT_PC_REG (*(reg32 *) LCD_LCDPort__PC) - #define LCD_PORT_PC_PTR (*(reg32 *) LCD_LCDPort__PC) + #define LCD_PORT_DR_REG (*(reg32 *) LCD_LCDPort__DR) /* Data Output Register */ + #define LCD_PORT_DR_PTR ( (reg32 *) LCD_LCDPort__DR) + #define LCD_PORT_PS_REG (*(reg32 *) LCD_LCDPort__PS) /* Pin State Register */ + #define LCD_PORT_PS_PTR ( (reg32 *) LCD_LCDPort__PS) + + #define LCD_PORT_PC_REG (*(reg32 *) LCD_LCDPort__PC) + #define LCD_PORT_PC_PTR (*(reg32 *) LCD_LCDPort__PC) #else - #define LCD_PORT_DM0_REG (*(reg8 *) LCD_LCDPort__DM0) /* Port Drive Mode 0 */ - #define LCD_PORT_DM0_PTR ( (reg8 *) LCD_LCDPort__DM0) - #define LCD_PORT_DM1_REG (*(reg8 *) LCD_LCDPort__DM1) /* Port Drive Mode 1 */ - #define LCD_PORT_DM1_PTR ( (reg8 *) LCD_LCDPort__DM1) - #define LCD_PORT_DM2_REG (*(reg8 *) LCD_LCDPort__DM2) /* Port Drive Mode 2 */ - #define LCD_PORT_DM2_PTR ( (reg8 *) LCD_LCDPort__DM2) + #define LCD_PORT_DR_REG (*(reg8 *) LCD_LCDPort__DR) /* Data Output Register */ + #define LCD_PORT_DR_PTR ( (reg8 *) LCD_LCDPort__DR) + #define LCD_PORT_PS_REG (*(reg8 *) LCD_LCDPort__PS) /* Pin State Register */ + #define LCD_PORT_PS_PTR ( (reg8 *) LCD_LCDPort__PS) + + #define LCD_PORT_DM0_REG (*(reg8 *) LCD_LCDPort__DM0) /* Port Drive Mode 0 */ + #define LCD_PORT_DM0_PTR ( (reg8 *) LCD_LCDPort__DM0) + #define LCD_PORT_DM1_REG (*(reg8 *) LCD_LCDPort__DM1) /* Port Drive Mode 1 */ + #define LCD_PORT_DM1_PTR ( (reg8 *) LCD_LCDPort__DM1) + #define LCD_PORT_DM2_REG (*(reg8 *) LCD_LCDPort__DM2) /* Port Drive Mode 2 */ + #define LCD_PORT_DM2_PTR ( (reg8 *) LCD_LCDPort__DM2) #endif /* CY_PSOC4 */ @@ -214,8 +218,13 @@ extern uint8 const CYCODE LCD_customFonts[64u]; ***************************************/ /* SHIFT must be 1 or 0 */ -#define LCD_PORT_SHIFT (LCD_LCDPort__SHIFT) -#define LCD_PORT_MASK (LCD_LCDPort__MASK) +#if (0 == LCD_LCDPort__SHIFT) + #define LCD_PORT_SHIFT (0x00u) +#else + #define LCD_PORT_SHIFT (0x01u) +#endif /* (0 == LCD_LCDPort__SHIFT) */ + +#define LCD_PORT_MASK ((uint8) (LCD_LCDPort__MASK)) #if (CY_PSOC4) @@ -225,7 +234,9 @@ extern uint8 const CYCODE LCD_customFonts[64u]; */ #define LCD_HIGH_Z_DATA_DM (0x00000249ul) #define LCD_STRONG_DATA_DM (0x00000DB6ul) - #define LCD_DM_DATA_MASK (0xFFFul << (LCD_PORT_SHIFT * 3u)) + #define LCD_DATA_PINS_MASK (0x00000FFFul) + #define LCD_DM_DATA_MASK ((uint32)(LCD_DATA_PINS_MASK << \ + (LCD_PORT_SHIFT * 3u))) #else @@ -247,11 +258,16 @@ extern uint8 const CYCODE LCD_customFonts[64u]; #endif /* CY_PSOC4 */ /* Pin Masks */ -#define LCD_RS ((uint8) (((uint8) 0x20u) << LCD_LCDPort__SHIFT)) -#define LCD_RW ((uint8) (((uint8) 0x40u) << LCD_LCDPort__SHIFT)) -#define LCD_E ((uint8) (((uint8) 0x10u) << LCD_LCDPort__SHIFT)) -#define LCD_READY_BIT ((uint8) (((uint8) 0x08u) << LCD_LCDPort__SHIFT)) -#define LCD_DATA_MASK ((uint8) (((uint8) 0x0Fu) << LCD_LCDPort__SHIFT)) +#define LCD_RS ((uint8) \ + (((uint8) 0x20u) << LCD_LCDPort__SHIFT)) +#define LCD_RW ((uint8) \ + (((uint8) 0x40u) << LCD_LCDPort__SHIFT)) +#define LCD_E ((uint8) \ + (((uint8) 0x10u) << LCD_LCDPort__SHIFT)) +#define LCD_READY_BIT ((uint8) \ + (((uint8) 0x08u) << LCD_LCDPort__SHIFT)) +#define LCD_DATA_MASK ((uint8) \ + (((uint8) 0x0Fu) << LCD_LCDPort__SHIFT)) /* These names are obsolete and will be removed in future revisions */ #define LCD_PORT_DR LCD_PORT_DR_REG diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD_LCDPort.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD_LCDPort.c index 7d5cdb8..3fa29b2 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD_LCDPort.c +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD_LCDPort.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: LCD_LCDPort.c -* Version 1.80 +* Version 1.90 * * Description: * This file contains API to enable firmware control of a Pins component. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD_LCDPort.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD_LCDPort.h index 6f77bc0..4417263 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD_LCDPort.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD_LCDPort.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: LCD_LCDPort.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines @@ -25,7 +25,7 @@ /* Check to see if required defines such as CY_PSOC5A are available */ /* They are defined starting with cy_boot v3.0 */ #if !defined (CY_PSOC5A) - #error Component cy_pins_v1_80 requires cy_boot v3.0 or later + #error Component cy_pins_v1_90 requires cy_boot v3.0 or later #endif /* (CY_PSOC5A) */ /* APIs are not generated for P15[7:6] */ diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD_LCDPort_aliases.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD_LCDPort_aliases.h index bfba954..15c22c8 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD_LCDPort_aliases.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD_LCDPort_aliases.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: LCD_LCDPort.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD_PM.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD_PM.c index b34c396..855f7f2 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD_PM.c +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/LCD_PM.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: LCD_PM.c -* Version 1.80 +* Version 1.90 * * Description: * This file provides the API source code for the Static Segment LCD component. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.bvf b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.bvf index 682e81b..d677d59 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.bvf +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.bvf @@ -11,275 +11,367 @@ Verifying bitstream. ---------Processing bitstream.--------- -Utilized "udb_hv_b@[UDB Pair=(1,2)]" +Utilized "udb_hc@[UDB Pair=(1,0)]" +Utilized "udb_hv_a@[UDB Pair=(1,1)]" Utilized "udb_hv_a@[UDB Pair=(1,3)]" Utilized "udb_hc@[UDB Pair=(1,3)]" Utilized "udb_hv_b@[UDB Pair=(1,4)]" Utilized "udb_hc@[UDB Pair=(1,4)]" +Utilized "udb_hv_a@[UDB Pair=(1,5)]" Utilized "udb_hc@[UDB Pair=(1,5)]" -Utilized "dsi_hv_b@[DSI=(0,2)][side=top]" +Utilized "dsi_hv_b@[DSI=(1,1)][side=bottom]" +Utilized "dsi_hc@[DSI=(1,2)][side=bottom]" Utilized "dsi_hv_a@[DSI=(0,3)][side=top]" Utilized "dsi_hv_b@[DSI=(1,3)][side=bottom]" Utilized "dsi_hv_a@[DSI=(1,4)][side=bottom]" Utilized "dsi_hc@[DSI=(0,5)][side=top]" +Utilized "dsi_hv_a@[DSI=(0,5)][side=top]" Utilized "dsi_hc@[DSI=(1,5)][side=bottom]" +Utilized "dsi_hv_b@[DSI=(1,5)][side=bottom]" ---------Propagating signals.--------- -Found signal "\SPIM:BSPIM:cnt_enable\" on jack "pld0:out0[UDB=(2,3)]". -Number of connected bvjacks: 2. +Found signal "\Timer_1:TimerUDB:status_tc\" on jack "pld0:out0[UDB=(2,0)]". +Number of connected bvjacks: 1. - 1. Connected jack name: "statctrl:inout3[UDB=(2,4)]" - - 2. Connected jack name: "pld0:in3[UDB=(2,3)]" + 1. Connected jack name: "statctrl:in0[UDB=(2,0)]" -Found signal "\SPIM:BSPIM:state_1\" on jack "pld0:out2[UDB=(2,3)]". -Number of connected bvjacks: 7. +Found signal "\Timer_1:TimerUDB:trig_disable\" on jack "pld0:out1[UDB=(2,0)]". +Number of connected bvjacks: 1. - 1. Connected jack name: "pld1:in6[UDB=(3,5)]" + 1. Connected jack name: "pld0:in5[UDB=(2,0)]" - 2. Connected jack name: "pld0:in2[UDB=(2,4)]" - 3. Connected jack name: "pld1:in10[UDB=(2,4)]" + +Found signal "\Timer_1:TimerUDB:timer_enable\" on jack "pld0:out2[UDB=(2,0)]". +Number of connected bvjacks: 3. + + 1. Connected jack name: "pld0:in1[UDB=(2,0)]" - 4. Connected jack name: "dp:in5[UDB=(2,4)]" + 2. Connected jack name: "dp:in1[UDB=(2,0)]" - 5. Connected jack name: "pld1:in10[UDB=(2,3)]" + 3. Connected jack name: "dp:in5[UDB=(3,0)]" - 6. Connected jack name: "pld0:in6[UDB=(2,3)]" - 7. Connected jack name: "pld0:in6[UDB=(3,3)]" + +Found signal "\Timer_1:TimerUDB:run_mode\" on jack "pld0:out3[UDB=(2,0)]". +Number of connected bvjacks: 1. + + 1. Connected jack name: "pld0:in7[UDB=(2,0)]" -Found signal "\SPIM:BSPIM:tx_status_4\" on jack "pld0:out3[UDB=(2,3)]". +Found signal "\Timer_1:TimerUDB:control_7\" on jack "statctrl:out7[UDB=(2,0)]". Number of connected bvjacks: 1. - 1. Connected jack name: "statctrl:inout0[UDB=(2,3)]" + 1. Connected jack name: "pld0:in11[UDB=(2,0)]" + + + +Found signal "\UART_1:BUART:tx_state_1\" on jack "pld1:out3[UDB=(3,0)]". +Number of connected bvjacks: 5. + + 1. Connected jack name: "pld0:in3[UDB=(2,3)]" + + 2. Connected jack name: "pld0:in3[UDB=(3,3)]" + + 3. Connected jack name: "pld1:in4[UDB=(3,3)]" + + 4. Connected jack name: "dp:in3[UDB=(2,3)]" + + 5. Connected jack name: "pld1:in4[UDB=(3,0)]" -Found signal "\SPIM:BSPIM:dpcounter_one\" on jack "pld1:out0[UDB=(2,3)]". +Found signal "\Timer_1:TimerUDB:status_2\" on jack "dp:out0[UDB=(3,0)]". Number of connected bvjacks: 1. - 1. Connected jack name: "statctrl:in3[UDB=(2,3)]" + 1. Connected jack name: "statctrl:in2[UDB=(2,0)]" -Found signal "\SPIM:BSPIM:load_cond\" on jack "pld1:out1[UDB=(2,3)]". +Found signal "\Timer_1:TimerUDB:status_3\" on jack "dp:out1[UDB=(3,0)]". Number of connected bvjacks: 1. - 1. Connected jack name: "pld1:in11[UDB=(2,3)]" + 1. Connected jack name: "statctrl:in3[UDB=(2,0)]" + + + +Found signal "\Timer_1:TimerUDB:per_zero\" on jack "dp:out2[UDB=(3,0)]". +Number of connected bvjacks: 3. + + 1. Connected jack name: "pld0:in8[UDB=(2,0)]" + + 2. Connected jack name: "dp:in3[UDB=(2,0)]" + + 3. Connected jack name: "dp:in3[UDB=(3,0)]" -Found signal "Net_479" on jack "pld1:out2[UDB=(2,3)]". +Found signal "ClockBlock_1k__SYNC_OUT" on jack "statctrl:inout0[UDB=(3,0)]". Number of connected bvjacks: 2. - 1. Connected jack name: "io_ijack_6[IOP=(0)]" + 1. Connected jack name: "clkrst:in3[UDB=(2,0)]" + + 2. Connected jack name: "clkrst:in0[UDB=(3,0)]" + + + +Found signal "\UART_1:BUART:tx_state_0\" on jack "pld0:out0[UDB=(2,3)]". +Number of connected bvjacks: 5. + + 1. Connected jack name: "pld0:in4[UDB=(2,3)]" + + 2. Connected jack name: "pld0:in4[UDB=(3,3)]" + + 3. Connected jack name: "pld1:in11[UDB=(3,0)]" + + 4. Connected jack name: "pld1:in11[UDB=(3,3)]" - 2. Connected jack name: "pld1:in6[UDB=(2,3)]" + 5. Connected jack name: "dp:in4[UDB=(2,3)]" -Found signal "\SPIM:BSPIM:load_rx_data\" on jack "pld1:out3[UDB=(2,3)]". +Found signal "\SPIM:BSPIM:rx_status_6\" on jack "pld0:out1[UDB=(2,3)]". Number of connected bvjacks: 1. - 1. Connected jack name: "dp:in4[UDB=(2,4)]" + 1. Connected jack name: "statctrl:inout2[UDB=(3,4)]" -Found signal "Net_30" on jack "pld0:out0[UDB=(3,3)]". +Found signal "\UART_1:BUART:tx_status_0\" on jack "pld0:out3[UDB=(2,3)]". Number of connected bvjacks: 1. - 1. Connected jack name: "io_ijack_5[IOP=(0)]" + 1. Connected jack name: "statctrl:in0[UDB=(2,3)]" + + + +Found signal "\UART_1:BUART:tx_status_2\" on jack "pld1:out1[UDB=(2,3)]". +Number of connected bvjacks: 1. + + 1. Connected jack name: "statctrl:in2[UDB=(2,3)]" + + + +Found signal "\UART_1:BUART:tx_bitclk\" on jack "pld1:out2[UDB=(2,3)]". +Number of connected bvjacks: 4. + + 1. Connected jack name: "pld1:in6[UDB=(3,0)]" + + 2. Connected jack name: "pld0:in1[UDB=(2,3)]" + + 3. Connected jack name: "pld1:in6[UDB=(3,3)]" + + 4. Connected jack name: "pld0:in9[UDB=(3,3)]" + + + +Found signal "\UART_1:BUART:tx_bitclk_enable_pre\" on jack "pld1:out3[UDB=(2,3)]". +Number of connected bvjacks: 1. + + 1. Connected jack name: "dp:in0[UDB=(2,3)]" -Found signal "Net_439" on jack "pld0:out1[UDB=(3,3)]". +Found signal "\UART_1:BUART:tx_fifo_empty\" on jack "dp:out0[UDB=(2,3)]". Number of connected bvjacks: 2. - 1. Connected jack name: "pld0:in5[UDB=(3,3)]" + 1. Connected jack name: "pld0:in2[UDB=(2,3)]" - 2. Connected jack name: "pld1:in6[UDB=(3,3)]" + 2. Connected jack name: "statctrl:in1[UDB=(2,3)]" -Found signal "\SPIM:BSPIM:ld_ident\" on jack "pld0:out2[UDB=(3,3)]". +Found signal "\UART_1:BUART:tx_fifo_notfull\" on jack "dp:out1[UDB=(2,3)]". Number of connected bvjacks: 2. - 1. Connected jack name: "pld0:in2[UDB=(3,3)]" + 1. Connected jack name: "pld1:in4[UDB=(2,3)]" - 2. Connected jack name: "pld0:in5[UDB=(2,4)]" + 2. Connected jack name: "statctrl:in3[UDB=(2,3)]" -Found signal "Net_419" on jack "pld0:out3[UDB=(3,3)]". +Found signal "\UART_1:BUART:tx_shift_out\" on jack "dp:out3[UDB=(2,3)]". Number of connected bvjacks: 1. - 1. Connected jack name: "io_ijack_0[IOP=(3)]" + 1. Connected jack name: "pld0:in10[UDB=(3,3)]" -Found signal "Net_428" on jack "pld1:out0[UDB=(3,3)]". -Number of connected bvjacks: 1. +Found signal "\UART_1:BUART:txn\" on jack "pld0:out1[UDB=(3,3)]". +Number of connected bvjacks: 2. - 1. Connected jack name: "io_ijack_2[IOP=(3)]" + 1. Connected jack name: "pld0:in5[UDB=(3,4)]" + + 2. Connected jack name: "pld0:in5[UDB=(3,3)]" -Found signal "Net_422" on jack "pld1:out1[UDB=(3,3)]". -Number of connected bvjacks: 1. +Found signal "\UART_1:BUART:tx_state_2\" on jack "pld0:out2[UDB=(3,3)]". +Number of connected bvjacks: 4. - 1. Connected jack name: "io_ijack_1[IOP=(3)]" + 1. Connected jack name: "pld0:in1[UDB=(3,3)]" + + 2. Connected jack name: "pld1:in9[UDB=(3,0)]" + + 3. Connected jack name: "pld0:in5[UDB=(2,3)]" + + 4. Connected jack name: "pld1:in9[UDB=(3,3)]" -Found signal "Net_425" on jack "pld1:out2[UDB=(3,3)]". +Found signal "\UART_1:BUART:counter_load_not\" on jack "pld1:out1[UDB=(3,3)]". Number of connected bvjacks: 1. - 1. Connected jack name: "io_ijack_3[IOP=(3)]" + 1. Connected jack name: "dp:in1[UDB=(3,3)]" -Found signal "mywire_1_0" on jack "statctrl:out0[UDB=(3,3)]". +Found signal "\SPIM:BSPIM:mosi_hs_reg\" on jack "pld1:out3[UDB=(3,3)]". Number of connected bvjacks: 2. - 1. Connected jack name: "pld0:in3[UDB=(3,3)]" + 1. Connected jack name: "pld1:in3[UDB=(3,3)]" + + 2. Connected jack name: "pld0:in0[UDB=(3,5)]" + - 2. Connected jack name: "pld1:in4[UDB=(3,3)]" + +Found signal "\UART_1:BUART:tx_bitclk_dp\" on jack "dp:out3[UDB=(3,3)]". +Number of connected bvjacks: 1. + + 1. Connected jack name: "pld1:in2[UDB=(2,3)]" -Found signal "mywire_1_1" on jack "statctrl:out1[UDB=(3,3)]". +Found signal "\UART_1:BUART:tx_counter_dp\" on jack "dp:out4[UDB=(3,3)]". Number of connected bvjacks: 2. - 1. Connected jack name: "pld1:in2[UDB=(3,3)]" + 1. Connected jack name: "pld1:in1[UDB=(3,0)]" - 2. Connected jack name: "pld0:in9[UDB=(3,3)]" + 2. Connected jack name: "pld0:in6[UDB=(3,3)]" -Found signal "\SPIM:BSPIM:mosi_pre_reg\" on jack "pld0:out3[UDB=(2,4)]". +Found signal "\SPIM:BSPIM:mosi_pre_reg\" on jack "pld0:out0[UDB=(2,4)]". Number of connected bvjacks: 1. - 1. Connected jack name: "pld0:in0[UDB=(2,4)]" + 1. Connected jack name: "pld0:in3[UDB=(2,4)]" -Found signal "\SPIM:BSPIM:tx_status_0\" on jack "pld1:out0[UDB=(2,4)]". -Number of connected bvjacks: 1. +Found signal "\SPIM:BSPIM:is_spi_done\" on jack "pld1:out0[UDB=(2,4)]". +Number of connected bvjacks: 2. - 1. Connected jack name: "statctrl:in0[UDB=(2,3)]" + 1. Connected jack name: "pld0:in11[UDB=(2,5)]" + + 2. Connected jack name: "pld1:in4[UDB=(2,4)]" Found signal "\SPIM:BSPIM:state_0\" on jack "pld1:out1[UDB=(2,4)]". Number of connected bvjacks: 7. - 1. Connected jack name: "dp:in2[UDB=(2,4)]" + 1. Connected jack name: "pld0:in5[UDB=(2,4)]" - 2. Connected jack name: "pld0:in6[UDB=(2,4)]" + 2. Connected jack name: "pld1:in5[UDB=(2,4)]" - 3. Connected jack name: "pld1:in5[UDB=(2,4)]" + 3. Connected jack name: "pld1:in10[UDB=(3,3)]" - 4. Connected jack name: "pld1:in2[UDB=(3,5)]" + 4. Connected jack name: "pld0:in10[UDB=(2,5)]" - 5. Connected jack name: "pld1:in2[UDB=(2,3)]" + 5. Connected jack name: "pld1:in2[UDB=(2,5)]" - 6. Connected jack name: "pld0:in1[UDB=(3,3)]" + 6. Connected jack name: "dp:in5[UDB=(2,4)]" - 7. Connected jack name: "pld0:in10[UDB=(2,3)]" + 7. Connected jack name: "pld0:in2[UDB=(3,5)]" Found signal "\SPIM:BSPIM:state_2\" on jack "pld1:out2[UDB=(2,4)]". Number of connected bvjacks: 7. - 1. Connected jack name: "pld0:in1[UDB=(2,4)]" + 1. Connected jack name: "pld0:in6[UDB=(3,5)]" - 2. Connected jack name: "dp:in1[UDB=(2,4)]" + 2. Connected jack name: "pld1:in6[UDB=(2,4)]" - 3. Connected jack name: "pld0:in10[UDB=(3,3)]" + 3. Connected jack name: "dp:in1[UDB=(2,4)]" - 4. Connected jack name: "pld1:in6[UDB=(2,4)]" + 4. Connected jack name: "pld0:in5[UDB=(2,5)]" - 5. Connected jack name: "pld1:in9[UDB=(2,3)]" + 5. Connected jack name: "pld1:in10[UDB=(2,5)]" - 6. Connected jack name: "pld1:in1[UDB=(3,5)]" + 6. Connected jack name: "pld1:in8[UDB=(3,3)]" - 7. Connected jack name: "pld0:in9[UDB=(2,3)]" + 7. Connected jack name: "pld0:in7[UDB=(2,4)]" -Found signal "\SPIM:BSPIM:is_spi_done\" on jack "pld1:out3[UDB=(2,4)]". -Number of connected bvjacks: 2. +Found signal "\SPIM:BSPIM:tx_status_0\" on jack "pld1:out3[UDB=(2,4)]". +Number of connected bvjacks: 1. - 1. Connected jack name: "pld0:in4[UDB=(2,3)]" - - 2. Connected jack name: "pld1:in7[UDB=(2,4)]" + 1. Connected jack name: "statctrl:in0[UDB=(2,5)]" Found signal "\SPIM:BSPIM:tx_status_2\" on jack "dp:out0[UDB=(2,4)]". Number of connected bvjacks: 1. - 1. Connected jack name: "statctrl:in2[UDB=(2,3)]" + 1. Connected jack name: "statctrl:in2[UDB=(2,5)]" Found signal "\SPIM:BSPIM:rx_status_4\" on jack "dp:out1[UDB=(2,4)]". Number of connected bvjacks: 2. - 1. Connected jack name: "pld0:in0[UDB=(2,5)]" + 1. Connected jack name: "pld0:in7[UDB=(2,3)]" - 2. Connected jack name: "statctrl:inout0[UDB=(2,5)]" + 2. Connected jack name: "statctrl:inout0[UDB=(3,4)]" -Found signal "\SPIM:BSPIM:mosi_from_dp\" on jack "dp:out2[UDB=(2,4)]". +Found signal "\SPIM:BSPIM:tx_status_1\" on jack "dp:out2[UDB=(2,4)]". Number of connected bvjacks: 3. - 1. Connected jack name: "pld0:in0[UDB=(3,4)]" + 1. Connected jack name: "pld0:in8[UDB=(2,5)]" - 2. Connected jack name: "pld1:in8[UDB=(3,5)]" + 2. Connected jack name: "statctrl:in1[UDB=(2,5)]" - 3. Connected jack name: "pld0:in4[UDB=(2,4)]" + 3. Connected jack name: "pld1:in11[UDB=(2,4)]" Found signal "\SPIM:BSPIM:rx_status_5\" on jack "dp:out3[UDB=(2,4)]". Number of connected bvjacks: 1. - 1. Connected jack name: "statctrl:inout1[UDB=(2,5)]" + 1. Connected jack name: "statctrl:inout1[UDB=(3,4)]" -Found signal "\SPIM:BSPIM:tx_status_1\" on jack "dp:out4[UDB=(2,4)]". +Found signal "\SPIM:BSPIM:mosi_from_dp\" on jack "dp:out4[UDB=(2,4)]". Number of connected bvjacks: 3. - 1. Connected jack name: "pld0:in5[UDB=(2,3)]" + 1. Connected jack name: "pld0:in10[UDB=(3,4)]" - 2. Connected jack name: "statctrl:in1[UDB=(2,3)]" + 2. Connected jack name: "pld1:in5[UDB=(3,3)]" - 3. Connected jack name: "pld1:in9[UDB=(2,4)]" + 3. Connected jack name: "pld0:in6[UDB=(2,4)]" Found signal "\SPIM:BSPIM:count_0\" on jack "statctrl:out0[UDB=(2,4)]". Number of connected bvjacks: 5. - 1. Connected jack name: "pld0:in3[UDB=(2,5)]" + 1. Connected jack name: "pld0:in11[UDB=(2,3)]" - 2. Connected jack name: "pld0:in11[UDB=(2,3)]" + 2. Connected jack name: "pld0:in11[UDB=(2,4)]" - 3. Connected jack name: "pld1:in3[UDB=(2,3)]" + 3. Connected jack name: "pld1:in3[UDB=(2,4)]" - 4. Connected jack name: "pld0:in11[UDB=(2,4)]" + 4. Connected jack name: "pld1:in3[UDB=(2,5)]" - 5. Connected jack name: "pld1:in3[UDB=(2,4)]" + 5. Connected jack name: "pld0:in3[UDB=(2,5)]" @@ -288,11 +380,11 @@ Number of connected bvjacks: 5. 1. Connected jack name: "pld0:in1[UDB=(2,5)]" - 2. Connected jack name: "pld1:in5[UDB=(2,3)]" + 2. Connected jack name: "pld1:in5[UDB=(2,5)]" - 3. Connected jack name: "pld0:in10[UDB=(2,4)]" + 3. Connected jack name: "pld0:in10[UDB=(2,3)]" - 4. Connected jack name: "pld0:in2[UDB=(2,3)]" + 4. Connected jack name: "pld0:in10[UDB=(2,4)]" 5. Connected jack name: "pld1:in2[UDB=(2,4)]" @@ -301,201 +393,211 @@ Number of connected bvjacks: 5. Found signal "\SPIM:BSPIM:count_2\" on jack "statctrl:out2[UDB=(2,4)]". Number of connected bvjacks: 5. - 1. Connected jack name: "pld0:in9[UDB=(2,5)]" + 1. Connected jack name: "pld0:in2[UDB=(2,4)]" - 2. Connected jack name: "pld0:in1[UDB=(2,3)]" + 2. Connected jack name: "pld1:in9[UDB=(2,5)]" - 3. Connected jack name: "pld1:in1[UDB=(2,3)]" + 3. Connected jack name: "pld0:in9[UDB=(2,5)]" - 4. Connected jack name: "pld0:in9[UDB=(2,4)]" + 4. Connected jack name: "pld0:in6[UDB=(2,3)]" - 5. Connected jack name: "pld1:in1[UDB=(2,4)]" + 5. Connected jack name: "pld1:in9[UDB=(2,4)]" Found signal "\SPIM:BSPIM:count_3\" on jack "statctrl:out3[UDB=(2,4)]". Number of connected bvjacks: 5. - 1. Connected jack name: "pld0:in7[UDB=(2,5)]" + 1. Connected jack name: "pld1:in7[UDB=(2,5)]" - 2. Connected jack name: "pld0:in7[UDB=(2,4)]" + 2. Connected jack name: "pld0:in7[UDB=(2,5)]" - 3. Connected jack name: "pld1:in4[UDB=(2,4)]" + 3. Connected jack name: "pld0:in8[UDB=(2,3)]" - 4. Connected jack name: "pld0:in0[UDB=(2,3)]" + 4. Connected jack name: "pld0:in8[UDB=(2,4)]" - 5. Connected jack name: "pld1:in7[UDB=(2,3)]" + 5. Connected jack name: "pld1:in7[UDB=(2,4)]" Found signal "\SPIM:BSPIM:count_4\" on jack "statctrl:out4[UDB=(2,4)]". Number of connected bvjacks: 5. - 1. Connected jack name: "pld1:in8[UDB=(2,3)]" + 1. Connected jack name: "pld1:in8[UDB=(2,5)]" 2. Connected jack name: "pld1:in8[UDB=(2,4)]" - 3. Connected jack name: "pld0:in8[UDB=(2,5)]" + 3. Connected jack name: "pld0:in0[UDB=(2,5)]" - 4. Connected jack name: "pld0:in8[UDB=(2,3)]" + 4. Connected jack name: "pld0:in0[UDB=(2,3)]" - 5. Connected jack name: "pld0:in8[UDB=(2,4)]" + 5. Connected jack name: "pld0:in0[UDB=(2,4)]" -Found signal "Net_234" on jack "pld0:out0[UDB=(3,4)]". +Found signal "\SPIM:BSPIM:mosi_from_dp_reg\" on jack "pld0:out1[UDB=(3,4)]". Number of connected bvjacks: 1. - 1. Connected jack name: "io_ijack_7[IOP=(3)]" + 1. Connected jack name: "pld1:in2[UDB=(3,3)]" -Found signal "\UART_1:BUART:tx_status_2\" on jack "pld0:out2[UDB=(3,4)]". +Found signal "Net_234" on jack "pld0:out2[UDB=(3,4)]". Number of connected bvjacks: 1. - 1. Connected jack name: "statctrl:in2[UDB=(3,4)]" + 1. Connected jack name: "io_ijack_7[IOP=(3)]" -Found signal "\SPIM:BSPIM:mosi_from_dp_reg\" on jack "pld0:out3[UDB=(3,4)]". -Number of connected bvjacks: 1. +Found signal "\SPIM:BSPIM:cnt_enable\" on jack "pld0:out0[UDB=(2,5)]". +Number of connected bvjacks: 2. - 1. Connected jack name: "pld1:in0[UDB=(3,5)]" + 1. Connected jack name: "pld0:in4[UDB=(2,5)]" + + 2. Connected jack name: "statctrl:inout0[UDB=(2,4)]" -Found signal "\UART_1:BUART:tx_state_0\" on jack "pld0:out0[UDB=(2,5)]". -Number of connected bvjacks: 4. +Found signal "\SPIM:BSPIM:state_1\" on jack "pld0:out2[UDB=(2,5)]". +Number of connected bvjacks: 7. - 1. Connected jack name: "pld0:in4[UDB=(2,5)]" + 1. Connected jack name: "pld0:in3[UDB=(3,5)]" - 2. Connected jack name: "pld1:in3[UDB=(3,5)]" + 2. Connected jack name: "pld1:in1[UDB=(2,4)]" - 3. Connected jack name: "pld0:in0[UDB=(3,5)]" + 3. Connected jack name: "pld0:in1[UDB=(2,4)]" - 4. Connected jack name: "dp:in3[UDB=(3,5)]" + 4. Connected jack name: "dp:in2[UDB=(2,4)]" + 5. Connected jack name: "pld1:in1[UDB=(3,3)]" - -Found signal "\SPIM:BSPIM:rx_status_6\" on jack "pld0:out1[UDB=(2,5)]". -Number of connected bvjacks: 1. - - 1. Connected jack name: "statctrl:inout2[UDB=(2,5)]" + 6. Connected jack name: "pld1:in1[UDB=(2,5)]" + + 7. Connected jack name: "pld0:in6[UDB=(2,5)]" -Found signal "\UART_1:BUART:tx_state_1\" on jack "pld0:out2[UDB=(2,5)]". -Number of connected bvjacks: 4. +Found signal "\SPIM:BSPIM:tx_status_4\" on jack "pld0:out3[UDB=(2,5)]". +Number of connected bvjacks: 1. - 1. Connected jack name: "pld0:in2[UDB=(3,5)]" - - 2. Connected jack name: "pld0:in6[UDB=(2,5)]" - - 3. Connected jack name: "dp:in5[UDB=(3,5)]" - - 4. Connected jack name: "pld1:in9[UDB=(3,5)]" + 1. Connected jack name: "statctrl:inout0[UDB=(2,5)]" -Found signal "\UART_1:BUART:tx_status_0\" on jack "pld0:out3[UDB=(2,5)]". +Found signal "\SPIM:BSPIM:load_cond\" on jack "pld1:out0[UDB=(2,5)]". Number of connected bvjacks: 1. - 1. Connected jack name: "statctrl:in0[UDB=(3,4)]" + 1. Connected jack name: "pld1:in0[UDB=(2,5)]" -Found signal "\UART_1:BUART:tx_bitclk_enable_pre\" on jack "pld1:out0[UDB=(2,5)]". +Found signal "\SPIM:BSPIM:dpcounter_one\" on jack "pld1:out1[UDB=(2,5)]". Number of connected bvjacks: 1. - 1. Connected jack name: "dp:in4[UDB=(3,5)]" + 1. Connected jack name: "statctrl:in3[UDB=(2,5)]" -Found signal "\UART_1:BUART:tx_bitclk\" on jack "pld1:out1[UDB=(2,5)]". -Number of connected bvjacks: 3. +Found signal "\SPIM:BSPIM:ld_ident\" on jack "pld1:out2[UDB=(2,5)]". +Number of connected bvjacks: 2. - 1. Connected jack name: "pld0:in10[UDB=(2,5)]" + 1. Connected jack name: "pld0:in9[UDB=(2,4)]" + + 2. Connected jack name: "pld1:in6[UDB=(2,5)]" - 2. Connected jack name: "pld1:in5[UDB=(3,5)]" - 3. Connected jack name: "pld0:in10[UDB=(3,5)]" + +Found signal "\SPIM:BSPIM:load_rx_data\" on jack "pld1:out3[UDB=(2,5)]". +Number of connected bvjacks: 1. + + 1. Connected jack name: "dp:in4[UDB=(2,4)]" -Found signal "\UART_1:BUART:tx_bitclk_dp\" on jack "dp:out4[UDB=(2,5)]". +Found signal "Net_30" on jack "pld0:out0[UDB=(3,5)]". Number of connected bvjacks: 1. - 1. Connected jack name: "pld1:in1[UDB=(2,5)]" + 1. Connected jack name: "io_ijack_5[IOP=(0)]" -Found signal "\UART_1:BUART:tx_counter_dp\" on jack "dp:out5[UDB=(2,5)]". +Found signal "Net_439" on jack "pld0:out1[UDB=(3,5)]". Number of connected bvjacks: 2. - 1. Connected jack name: "pld0:in4[UDB=(3,5)]" + 1. Connected jack name: "pld0:in5[UDB=(3,5)]" - 2. Connected jack name: "pld0:in11[UDB=(2,5)]" + 2. Connected jack name: "pld1:in6[UDB=(3,5)]" -Found signal "\UART_1:BUART:tx_state_2\" on jack "pld0:out1[UDB=(3,5)]". -Number of connected bvjacks: 3. +Found signal "Net_479" on jack "pld0:out2[UDB=(3,5)]". +Number of connected bvjacks: 2. - 1. Connected jack name: "pld0:in5[UDB=(3,5)]" - - 2. Connected jack name: "pld0:in2[UDB=(2,5)]" + 1. Connected jack name: "io_ijack_6[IOP=(0)]" - 3. Connected jack name: "pld1:in10[UDB=(3,5)]" + 2. Connected jack name: "pld0:in1[UDB=(3,5)]" -Found signal "\UART_1:BUART:txn\" on jack "pld0:out2[UDB=(3,5)]". -Number of connected bvjacks: 2. +Found signal "Net_419" on jack "pld0:out3[UDB=(3,5)]". +Number of connected bvjacks: 1. - 1. Connected jack name: "pld0:in6[UDB=(3,5)]" + 1. Connected jack name: "io_ijack_0[IOP=(3)]" - 2. Connected jack name: "pld0:in9[UDB=(3,4)]" + + +Found signal "Net_585" on jack "pld1:out0[UDB=(3,5)]". +Number of connected bvjacks: 1. + + 1. Connected jack name: "io_ijack_4[IOP=(3)]" -Found signal "\SPIM:BSPIM:mosi_hs_reg\" on jack "pld1:out0[UDB=(3,5)]". -Number of connected bvjacks: 2. +Found signal "Net_428" on jack "pld1:out1[UDB=(3,5)]". +Number of connected bvjacks: 1. - 1. Connected jack name: "pld1:in7[UDB=(3,5)]" + 1. Connected jack name: "io_ijack_2[IOP=(3)]" - 2. Connected jack name: "pld0:in8[UDB=(3,3)]" + + +Found signal "Net_422" on jack "pld1:out2[UDB=(3,5)]". +Number of connected bvjacks: 1. + + 1. Connected jack name: "io_ijack_1[IOP=(3)]" -Found signal "\UART_1:BUART:counter_load_not\" on jack "pld1:out3[UDB=(3,5)]". +Found signal "Net_425" on jack "pld1:out3[UDB=(3,5)]". Number of connected bvjacks: 1. - 1. Connected jack name: "dp:in3[UDB=(2,5)]" + 1. Connected jack name: "io_ijack_3[IOP=(3)]" -Found signal "\UART_1:BUART:tx_fifo_notfull\" on jack "dp:out1[UDB=(3,5)]". +Found signal "mywire_1_0" on jack "statctrl:out0[UDB=(3,5)]". Number of connected bvjacks: 2. - 1. Connected jack name: "pld0:in8[UDB=(3,4)]" + 1. Connected jack name: "pld0:in11[UDB=(3,5)]" - 2. Connected jack name: "statctrl:in3[UDB=(3,4)]" + 2. Connected jack name: "pld1:in4[UDB=(3,5)]" -Found signal "\UART_1:BUART:tx_shift_out\" on jack "dp:out2[UDB=(3,5)]". -Number of connected bvjacks: 1. +Found signal "mywire_1_1" on jack "statctrl:out1[UDB=(3,5)]". +Number of connected bvjacks: 2. - 1. Connected jack name: "pld0:in8[UDB=(3,5)]" + 1. Connected jack name: "pld1:in2[UDB=(3,5)]" + + 2. Connected jack name: "pld0:in9[UDB=(3,5)]" -Found signal "\UART_1:BUART:tx_fifo_empty\" on jack "dp:out4[UDB=(3,5)]". +Found signal "mywire_1_2" on jack "statctrl:out2[UDB=(3,5)]". Number of connected bvjacks: 2. - 1. Connected jack name: "pld0:in5[UDB=(2,5)]" + 1. Connected jack name: "pld1:in1[UDB=(3,5)]" - 2. Connected jack name: "statctrl:in1[UDB=(3,4)]" + 2. Connected jack name: "pld0:in10[UDB=(3,5)]" @@ -506,6 +608,13 @@ Number of connected bvjacks: 1. +Found signal "ClockBlock_1k" on jack "clk_1k[FFB(Clock,0)]". +Number of connected bvjacks: 1. + + 1. Connected jack name: "statctrl:in0[UDB=(3,0)]" + + + ---------Verifying signals (routing).--------- diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.ctl b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.ctl index 616e924..82f15f0 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.ctl +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.ctl @@ -1,6 +1,6 @@ -- ====================================================================== -- PSOC5_SPI_LSM303D.ctl generated from PSOC5_SPI_LSM303D --- 03/22/2013 at 10:33 +-- 07/25/2013 at 16:48 -- This file is auto generated. ANY EDITS YOU MAKE MAY BE LOST WHEN THIS FILE IS REGENERATED!!! -- ====================================================================== diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.cycdx b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.cycdx index a249682..8bc505b 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.cycdx +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.cycdx @@ -1,18 +1,66 @@ + + + + - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + @@ -22,24 +70,29 @@ - - - - - - + + + - - + + + + + + + + + + \ No newline at end of file diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.cyfit b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.cyfit index 65292095f6b0b1e9f4e6813a497006e06a0a8f64..f2b9d323f9da8212253d8b576a8ae899c3fc159f 100644 GIT binary patch literal 192850 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

Mo>d7yF{089z| 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

^tp_xPxUn+2 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%0Aq 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

nx#s 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�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%0AklX$g(k^kOPCS?etsH#3&~^e))M}!VBmfA9mFU zi2pb}dXS@yu7Act591lw8NQ7dt1fA%=%yzxGWw$} zDtR1a1L;&~-37#|o9mgvdP-7&GJT4U*Mji*kS<{H=ZATkydc%koY~$k|Ac+Fnt6#&87VHWQXVzm@`JK6 z^Jfmx7wTb%e}825tE4xh)!Xhf&U1rW?HywJ{v>}&!~0W_9ZkiZEqPVtbG%dmJV-Q0 z{?vHMG{K;bKO*t5#DaZ>=Ow*Cm6=rlec*o^YM$^LLDdBZpyDC}+pmJhkMH*EF0Uxh z5!W7BA&m!4pg|k+sSvX<1Yy0(_S6YLps+C)=NJmQt>}=l(#&Q4lFtvq5ibSf2$y*?PU)nV6+_GeaP!VX^wM3ih0B;H=OdcIg zQi0LONO$c6o;^i|+Y!(Ls03Q_MbXoj&4F9p+(BChy{uafiJ?=UQ9VnHjGpXHk5VvT zDw@n=agwC0R(!Yw)N5Fn_P_gEAwT&P?>g>g?tlBXR|kD**Xj@3ps*GryZ{klHOE+; z`SKsHn@&Hk6k<~FvLMIKCx7Rg8KLXqOrt5)Mi!9jzV8tuty5;iuJ zaYOAF)TK%mx5S1e-0Vy!X4|NwmxAby_&bn4O~<`w7I!nSbpq`g`fm$;o^=#S5AOoz zPp9m5y=4A&&||dn73E1uO`pIg38-sa=hFeMb7s*47%7be;6T6O)~jo@$7}oDt( zSD0DnMp-aM-Irseq&j*+Dfw!XW%;6RLh=mT5@LD5#}{udw542K#Iz>k4-|cz&7fz9 zhT7{AZYr-I6?cLG^g%+u3Fo1|3oR5XTjdT{qM~l6L{Bvu`@#Z2N}|0r=-dm)Z6NSQ zqI!hd*tLP5GvnS1ipNCimaf5WIhSJOA~_m?7q=Uzr*RPjr#FxNf@cmc4noq9@E zr;PmOpMZkh*V_GR_E1-nv_)n%k%fv7O=X5cM<7M>m!szE6h{I>btQL{Y}>(A4R5{* z?WB~ah9GDaLY6W#q-bHO>w~~~j{iwP7zcv-HNYR{x(*Fm{?G%5=KrPWbvir#6NnBF zwft9fv`!Wn9xiR+ys$UiIgcYfkB++AD1S)-Mb5LPjVC+nkJ0=vB{^ey3ahxvi-Ov* z6yY9tRPtNT*HPVt;oQ|eS4(HzA4SJ|G)grRxzDVGHu8f>w5GY=%1qtvGl>-3s8bj5~4dTZDE!}QaWgM!Cpd(|=p_8GY! zK;xToI;fKj)Z&n2zX_^bEcW^!fyj1c^1O+MWV;HMn1c8$fpksthcd7a>WG7aqrY}o zn3X3LDO((1R`xtSMO>8vE|)$RuVRT&|a7?&s+K!>K`E#aaC5 zemYWZgZWgj{3}u6#)(Mq zrxu>3Of>SGk*3Nj0q!#EKWN;g#q_^v`7B=pmm|soN`O2SZz+OI)TNm-oD6I5Nweuv zMPa!vme6e(*;3ShrK?zw&z(~$0R{F{RX@4YF&uC~7d@{Q1t1CERNQTwFNKn|{B?z* zaoWF;xkb5o#)LkmKFc<%>>Z-4vao=#N^Gje`E z*V{w{ASV}#K@kk{-?PtCy-H+DzX_iiSDQ4N7Jm{mWNM; zTUL}mBi#U9Rad?x%4IBSpYxPUl;dO6lZ0Bv0_e=2g+yZU z=p^H!SSxI#k-vI}OykxwRKydI+}G#gpz#4L5+~6k>Bk4fh7G;4VzP;QRl4A^DKH5mNdx^Qrtgetv%Ddq#Nnt_=lH zO#^%S4?J?-!yUT%gK6>n8}T}dQIPmvJ#zsl*3mH5S88x&Iq*}*th5wDEK?fY8;-bq zmki*Or>L>WKU@d)Etp!eR~sUCECEw9M!6>UIB~lu{4cTfG~+y4(vPrysd7mS?_Hjm~RSD9DGzy!gB@QJy^2zCRs8;hm#{)`~o4aW8(j%V@QumwR`T-IlIJgAt#kITv3`%A&_*ACHvWM98O9~ z+m;>u$G6O#$C80rn7^$!IwsOW)mJ0#I{2Vq2pMD z)_#i#d1Oa3?9>Vs%Tn^BvPe(&F-Rq~X2xbK{rJNuN)fWqfo|s$SV`~ch%Qkb3()BaxVW^B9cPIGk08cNLe$8XiO{~M)!e@y+RtL zO)n{=W~5*RSBjK7QhlRX`4JlI6iYIbcu~l9IxD|Cc^R))bg;xvsApva$2f%|#QXa- zHj1lbG^|Him`*CTHRWfv96WcS47?jdvB!Yb|m$ft)HgA;K!(_}jVI zGB3>%yXC{uQGaWt!p441J8kntV34Ig<_*0XxYAfOx{Qr8DrVyC$mZ2UpU=6Dk z>7~JGhH6*vYKANh58LBnBag`LI2NxpN5T8GTG1hj815LkN*9=t+VYH*D$-Zm;J)Ik zFdDr!_p6a2)R|Md%2LiHGSk*jZYsqg*fYcL>DrCK{>ddL@tqZqQ7i3(j3H5SI>M^; z<$bHNxfo~Oa_Xi?ks}kP$fWRw9Cj#4d8N3ytnr*Q$hvp`I;;el1)IMr0*3T5XwYoA zrtQntvJ+dt67^XuM%Lpie&I}CfMA7#alzB4fjQhWs(yB+i6#oI_Ft0x5&P{*FlDj3 zvE9*FH8QdGalcHxEehb6W?l)YOmyT{=wPA-(i4Am8Rao9znClnzR8JRIDzci%I2{a zSv9<|$VDdJ#Y|8LaT`r}M;>=)anJbCm?6-$B zIqk_~mAkKd_hY0<1*Hl#hX$ot%KP`5al)E-eU?SfLmZ5_XMUV+YYb@JzxwkoAQG~! zO6m8gpP+>5l?p!efImmW*JUjK;-~YAcDMi|ac4RjB-uv3f0G1K)SWw(<3i(ZueP&! zwVf8bL0tp&*viMheEirs#o7jNuKpM1P&$Wz#v@=l#nZkY_V@gX*073hrOhy)OG>po zElL^ry<=3u0^Ou5raUN31aJ&2ENm>x5EiM5jhvh-tA27Xwo91w{YJGRhZ2P4 z$H3{=cU0~zQSjK5pEV+_TS7|qzY~v*KsGc_(w-V{9UVx?>LoN zxZ*g{UVBmO+0Cou@X#^XnZlT0($D#OKy%srYei-FP2!iy&RX_&6@b>}NP z{fOoAxtu?VsoP*V>-;)Cf8Y_X#DHL-TO$K~ood&+4IX_ZoWP4;B~wwIZA_AK<*}E< z-vfj;nh5g}yz=hEU&3h62}v-0D_PnnJ8Mh<*_22%q2SiQa>|l6{ z5*^TWSr^#FlQ)ItUoR~%vod(0R@z~%iw9mVA8tYVEYs?29 zqiO>QRx~?=LGH|Ia`l%=$ZGZbaDFuZp4ws<_viAwFftd3I>a-AJ(p;<&Q_^jjd=6; zo;$l_y&kNw*54HS1b+Cs-nKjZc|7B3<%4w16}Grq{ki-(OVvTkgLI*bv`$AdK0K$q zzcU$qbGrAhbh2K1s>LB*d+mB%!;eC^)5Y3mSM>Su?MhQQz}`v8{}g5hoC_7cmP9+t z_u^iUEH*;oirR=RUdP=2e)xI)LK-!Gh*R9yhoHPm<74Z`Wzp<2_#zeIl1+#2kyE3P zk1a&P{z;eK0h>4a7&%^Fh&{7dLmTK;kX19~+SyI_;d>RJwytP*DUD`wHgc!nJl6w# zUQUu&M#Dd>-yD@^lTU~S;GX}OZ5s>IRFY`Ps5a9Ie*O48eYgmZj)YX!>y*jsv`zHt z(V%Y!IdJ$K1t->#TF?Vm5L6?2ReBGv-k`63o0k3U|1ovdL2)!sJBow@f*%gS-Q9u{ z+}#g%cL{a`3-0dj?sB-hOK^Ah@7~{EU)9yt)?Lr;+)hvT)4lWb@cvl->a==PV_rX! z+o<6Ccgr_)UCbaYr`Pvz00~BT+)P{vkIh81r>fmQPE{>S;mAjqGQzF*%qH(^Mi;bj zQr|hX|AyZ?oe!P+2jfpWfk4ZcEKbfp0)PvIh^fz}u-bF{{$}JCKC^)#g!Sxb3NHqR z<=bCKXcPoWUfc&1OJZYxoADAPKGGU&sn5=D&r)Ygca7n6^{T<631CQmL6BgagyqW@~rzvWp6y(IV>=G_bUktUU=R{PAK4*Xi{F#@-Ks~(^s1( zqX%U=Jq(RwQso>{@?=4E-`?t3c@wIUaC@!H+hBOPjcc-6F~TWdr%Gx?`2H`8yPV4uHW;2XyFGI3!3Jw!KLb))O$ zJ{Zva6W||c))P3z{4s262tKm4ikZ9WB^c%sF2X9>%*Zi2TJs9$mXmb1(S-XF8$v>}*nmgrEu`J&6vZ><5-Q;Ci_T7I=gz0pcrR63afm9IwJ2-`6Y3?egLE{&HFZO82ZkEUgW2E~jn@*0Pj2QCo?1r z=pk|w!O%%xuU~F1a~mnW#h-gAU30WvxU<&qNq;h9Uz?2V^xQ;$`srkQwr&&3m#k+6A@T0kQBr`Q&vu~XazMmgkT`SPQmLZO@B8~H<7EJ*#J_BISB_eV!jL@*-U>1|uTDQ+?k$4q z3?%DVdBr7TeG`!EN3-i{#jB&A#juIU&|a3md6@Tr1hRMJ{N1Fr$9e8};-F=Y(CP#; zq#n*fscF*is=MwF-?KhhJKFtX0XP~`YDAjqpQ?&(90lT#|un& z2%=|3i?q#nqf8iB*RCAXe|=O=jBzikmEuc-tL93Y7jiNq} zBL4S;3oen1X6^5p&hBK7%IL6{51Kt7x$f3_LA=|65)d6S3AZvnJ#{>6oM0KJ#9P=2X}*z^kbKB~2Hka~Re$5s9!>O)mh;)|lyuxNE(1N5WeuMn>wx5ARbU zBomc66VN&wtcvEt&oCIQIWmDP>xTE`^q|Ad;o4of0Zvlr&>BTD@ zMFqYRT^C)+MRSTp_a-2ZoIn09-)+scY!A}ykMdXXu;aXqLM?_xHlf;Iz>Q(9~2CsR0=7NstzC0XeD8DuTd1{ys7TY4ADj>jmeu(-_PbSE!tJmYm>MkK2(;^-z)pCf|To!|1s>5k#|aJ zCRNiZcCYnfT3G}n(Eoy9i_-*{duYo2i zOWWV7-09xDf5hb#S=Ka>L>1`*o>mXxBN@K&@niRbrd!)d>gecya_`y+dgOtQ;|S(H z+LRn_{Le0y#12xq=+N9eNPmw63Vw1G;&w9Mqm|8Uqn+B#_n+8@Jk0VR)^lX%$eF~k zJR@@YIX_GiyLyR6kiQ-nOEf3l$c|aZ_@cMvOPR`3Q=GvLa|7c7&^I(?z4Usv$$Gfl z9N9W%GEEIC3HFI*$GaCSi~egkcp4Srh~9=Q37bj1uP(L+Zb*4$feax4$zlp|#N2?5f9md6S=Nlo>$b!ho90|o5e z_{i&z)5cGoe;`5P$vkvPk#47*$u0{{ZH4j?QB#heyoFbnv*39$urN z67o1!cN!y2ci+E7vNpb-~1)LeLa1lXlWQkiQh143WP>^z63876ZUkCKwBL>2e( zrFL^_c%)koxBPexg%T=f9le>UHf1^Z3LFY-jI#kc&Zm*)ui{J*{KSt^*PXaSmuA;)OsW=i!Y zhPhDLg1``CC@ia^M{6XLc0%Q^c85Z;&Jlp|bhVOMgYn)k+LmKqJRQ z``auCd`))C8Cou_Yj50!fTpOj|2lh+E-gt z^4WIlcr!U`9r9(FDKx=)L^-Bv+hgWxyB-lWgTLl7rb2B5bleP2~15|rgbMSainYLrjYEa|DZ-u5!nG$Q!@KAXBO4B+p;Fm`sU|B5+J1sA@zW_aX<;Qd z(Na@GW4z7XB6+mbf6feW(VV{H??2o7pAS%V5U!a0STdiXi<1vSR;c`A_&CnDIXhdQ zCQ#BgHl?_0{g+T>eea<s~dWyx1L zC5A&3ZT5*gd|N!9Y9LZl=`UeCClWZW0FN%dpiJPX$xUbXuK~IM75fFb(4hrKR*J(H z+j=!rE7#|$_6+@6)v&G3+7rcDy`>M)iIAx`V|9Wi$-(11YtFX#fTvb-? z|2JtqO@d_w(_}LL{n?=3d9)bid}T|%#(6gwC-}tHN0yg36szoKJ|vt3S&<}&ZEk7; zo6E;aDh4Np^iaZf123Z~zQSaKJWbg$D6W(a)385h>{1{j)>{r_a9r_J6yoo^ULN3h z%seYOVy)nH>NKM0pRn{S@m(hPfJ6A}?<5Py{^j?&B;iyZX<~n#HR=nDjjaOMw%nd?6n2Nj@JB4s-nr^+jMc_>UR`%S0tduVR5dpt_ct_rcPIt-k2iA$*J3{3DJbHmi(Rf4Aw5G08t$uU@MM zE$lW|IzJmLd$Q+=1CoiimSHV6@91d$_#}&p#?xT(VamkC!s7TEh_omK_AuuJv zd0MaL7izJHmzNQICnZEw0_LFfVZp)+Pq0q~pY$?)r1L!`Da6ea4K?(2g$skxL^mN1 z_1)eUUKqO)>JM%iq zU0|F_nnm@D)zl<2w-Wz#M9uGU8=~qgI4tXWk20-N%1(o`ui-xMY?jnh#Hm*|5;HG* ziDL1aQDj@15HXR_ARuAy`zw4P{q29k3D}yfz14b*p(5(~^+~eGRR65$|h1H`~*PO_>iZqM}iJ;Je0gQM&>HFvzmC_wBrZke- z2ktgt2xGnZ{OnI|j<`UaH49>iVDIUUI4o>;O zxq)8ELj52y|Jn%4(Qv2%zwmRx0fY;9ds*ncJXs%tvN0^_b63M?HeD!$6{vTCGCy|> z2Tj5Xju5IKXH{HUTuSmC!U z<7!M0J(Cb>=q%Z+Z+#Q{-CvR%nWHL|kmHd56m8vYG*-U)6zUAVIZ;+V2H65yEJA8a&;M@b!Ivh#1aKk8+DFTSd#VKl{f+*C51nw*bpk&s%fx z1yV3&<=}#Z%KZTce|#Rbhf~fm3c}H9{|LE4mfC;;4=V|7v6sZ-ae*N70pq7vq9dXT z{_UCQ3K>Ak<1ZB3X>FD@#x=k0pKEIanlwc`RB}mYbpxzk)Wr|3i&{!^?1T48YdM=< z)QGSbzX&t}Y%1GNT_4?YYQK1CguRKl*rD=OXt!l|ZdIZ?jxB9ONO3mAOvqwz896OHhbe%bG`>JKK zU4-oaL1D{rOk2i?SzLq|4qQSNNt9A_DX_Z{U~9sE#yaUVE-pMDvZWiYj{x>%oOG(r zB@Ux3H5>Ep9(-a>0bytKLf2e(>OWY5)jk)j$)#VJIdPh2qyk?(0f~mJe896lJ7&l$ zaNNj^5km5DCNH68grvTeMLfJPdG@DRZG@kRISGWEo}fk6r0hk*7~CT7=lh zE=NnhS)G?p?rVe?%_8nl$fzdt!9i(M37dZbg&ztq>T>XtS=B;Psf~mmJmUOJ$arvu zW~Nt_?HdU6&in1s{K~}nYyPg*p+RTs|cg;9{tm=H-!5WK&hL!4Vz!6p#AB@Li|VTbob~JX9Xv=e7e`o zyqS>wCn9NKkAd7MGZkvN-dmiBZKmvBO+>uYl-+pnb5D-+~X@e>-BG@4rbrX2 zw;sD=yU|zZxpA5ta~cBO)R1wBp0fM8{{+0$?b+w43EJhX@F@Pc{j>gM^+YCt{*F4B z#8G26K8OzXo8KlPz}3`^1TryI(rbGgx@8a^kIIE1N4f2Pt2JNgbzm<+O%u<vRzG504QkR}lO?}Yrzx7BWT8pa@c z(nlhfuz1HZp6#ge`{lp6-{Fd`b$_N~z!<#_?8fqir)b#?av0-{v&9!8+Pgi-!mwkl zMSn`A(LLpl%DZ^J%h0CCyN}?oXz{X&Q9u)JXM2)ivuMfL=n#{^8aMA|GySr_yAHke z>$i%-g~uqwtJAAv{2GFToTh^!t1&eE<+FY^4BMhlVPAHz#dr6yL8jkfKXXpFS#axA zj*wjg-=a4O0Jeru>Xs*STk8Dc<3`aC}-7dByg|$1FMqFF}Dm?c3I@~^u2C&Jy%{9(4zaR4mur+AHf@oo{_uKJ8 zR>iOx<81@PKn8H!R36z`02i<-dF4i3cUE|C&}I|JRYv(2g7v$gFsyHD@fi zY>2G0IIM*|5_Z^LY4~I?1vv)oa!t4eT!)V}?P!DV8Pi5DbiwybX~P#jV4V-R>85Gh zgYZX7nf4B*TQk}pZCY&&kMd4CLc(jU?`5Qs&0B4!8w4OXp$)It%p~@^mm34G*s)AM zcwF7z0nZ+E&p)ZaC7d{Y=Z@g1RM$TG@e6NKD^B;oO>TfEJpPd={T;O#-V8OVF8A1=}ER}z;Q6=irTc&bB#YyT(S}f*!Y&!QFFw;JD`eNJQkEl})=_d7 z!TCWDfY-~?`799RW+NrAH};)T6FS5N5D7zCyb|niWywQPEUW{(<{lNs0u$N~X#gtq z-H3^%bV%aPj9pr!ety0ow%!;`S}+ckVtz@I^69o?0UtAI$8SypR#@8nHl=@VSIy4^I$YJuXEt-GiXt?@QamL2j`VfG(iL=uNu{u8#}7a*6UjZ)W?jj`BWpNVooD z*p9y7HQ-yTP(Fw5bHk{yScSI*SW8Frk_gCu!Un$)gi8Xmo*T zE!nG`2Z9Fl>Df)Um$|aRl)S(6YPrUKzYTx?*|8q5$qUYOaL3X{TZ<4r$>bHcNdkBuy^uDla=ZTs*~TUqyO0Oh0%bvN9RJPn!3!L4C&-Nos&f3J z7a#jOIUumu{JnNCP&APdkP@Mb#v560JkB-7){TJ2HfGvj<2=i{@Z}y#A~;Q^!wTMG z(V}mG9^`qQY>xJQ_mj)l@NtUvlj#!QEVa;_3`+l#V!uwNQVvQhz3NhGBl$s&8Go&F0Yq(=MJu;i_Aa^n z4Me#j!H3Jgo^em>cXyNBwqKbh_Y%(nroes+kOG4mF#EJv@OrB_AiLP~{TDP9kLEu! z{P3!nO>1u}ND_!N-`b6Rx40dQ7xHI1fozc`8e~$w{gyyr5s-qpv(_ zG(5)s_pGtsZqEUkCJ!9o?aw>KM?HHe3$=*5XrTqSHoM%!1ed0{dsJmZAMj;H7N%+? z9p{4vIEG;;^k5y3PN{@7wSs<#K~h-RAkn6KcK`1$(G zq!&Lpo_T~@#P){uY0_=AXMekGFbUQ!?_m5ws-Ovw*tpI8zC+29IkK^N?90d-E9KKu z-eB;+naJC9;aoA}$5dzf@DaLk{RJ7=mdPt%vq#&M7<}$H)CxF^xOJ;XfGhxgMlNu{ zdQ30=oBIF(;|C@P^2cjc@`ND%0}$bPLyuh)|H9{<>w*4)A8k9TOm+8{=3O#?O>wa{Gft_9Y zku|=%b@RPw=E&1Dl!Zv!nH?{l;aOEI-D=Men+LgW0EdgZvlnGE|1~6F!499(g&-!f z8Gj%>5&N2FGbwU-pzRyTCy2?l*O_QyU>CHW#MC*Q%FcXH0`!d;lw9uR~n%Z9a|G zX8M9X*HJZ|vz63A{a?G;DmPPnq=H9tN0aNf=t}KJcpLF$O&WGsnERc!-kgXcpG}1d z-95_ga97MS1SaZ5dNLlh>Bk8!5gH!fKQ8Bll4bHN{&ja=OyG~3D2J+w$*ALE>YZWJ zcZlE1@dq#s(@D48S1=9pYP4knuwt+ZHxb#e=_6zgNIz!x3p~Q4ov#v2Gg9azPPoi*5!Sv$a>w+c%?gKov4X>ZqVG41nfYIFl#aPC2XYpVCT1Lw%M zHTb)SAL4Zp%^Vq!OJkOf^|(!PfTv>{bUQLR@IIq9EMw)pYHrimgpe3?q0hMU#GH0E zPuwdH4~&N4#V;59@-V1T0JaexZzY!HrawR@Q|D%kxmUXYL;)bq@&XTu26S$vgw>uk zY{wh|koB8zA?4Ue#!a6g22e^oXTT;sz}18^aB~mPXxxMhDF#rmqzyuGP&@FiaT5=u zF}YL?$UkvG1&(BH%Y@S9ZJ~qUs#RyBTgM;4S52oWj5x1w{ESsj=e}orC!rjXtI)vDFdcn`FbO0_x&uLP7@&1tyzA@7 zq(bIBC=58T8)bk_+!!Xk!K8cWj5gulV*y@^hP&Hvnt0?(j^mwJ^m{RZI(q$cJw>Wz{hRT@L{lCElu9m zdCsz!or@^VqdFD?JQni}Qr0n_Q=6s6RAyH5+2{POeN7WnEN{y)bS&s!7aF9-g3249 zr&fFPY-%!&i7BNf)~&PJi*K$j#m!#RtNAX>m_t^MHH7Q*Y>8^KwNhgkub6ev22gu0 zH705gU4cfru%p8r*E-8M*dtv?P_-3M%Erj1!mkR`J4D(_-?c?0#J zq0V=DF8@lkUgzBFaFets`#HtC4(mN^dds;4)25n)2HxDyFTlzf-N>wW8>tmsX>ERU z=&!z(BP?;9_3hnxXpw}HxYo9e3Lf&VCS%UM4ID{OM2!VS)WP;ph-(TUbjV=xm#Q#y zBTXb6UJ$>$odO{5$ABI@RJ45wufpHA*Nr_CwK5Ej@}4~&LB1=g(?)GJo=Pb+XizB3 zxWKY3i)pJhaWPSb8OM>oSw@?Ic-KXfa`?r6;yyPzJLvw0?%#o{oCjj?5y85a*DH#C zaU1&b6d#wBltQJ94h&Y^lC|5eFfK;N$7RZlMyzh{%h@9fhL2otb`Nm+P>T2NF?<`I zBRk2)@95l5rvkmj0Bz1c#HW-ITg1?eL2r}N7un?*+yyAtYSgKuC`{vK;y><#bkvC& zW4y-i8}Uaf2B{K}`nr$NnwUW^~KfO7IJtL6Fzt4%AO=2xj5NB5%q>kwJH#D_Xu4Pq?FO55mki(G|-%kI!3oVTh z^gniXAtT-gkoaW)8vNbPG1IopH6iRLzYN~Wn_9o;t5kXdI-XY+O_m~iRrs_lu>w3C=vdRN!a*YrYR)f_IyIF z_}gbO`wga9P4xI-k*PW=6%=+peOSwlf()@tzU-7*gqYJM*57<@-cAb zn88sIYwYQClq7jfnQF{0bo%o|6pX?(pZUS+v;ZN!+y{HGNCDvOwvj56CQ{&FkhmHfRkh z0fw?-^ozc6<%}cFz!7CO_fGlStt4?x

;Qnl<|id{&z=1vZ1(<_YxK@Vn!kXATZBL8cJAg_F`m1!RBMBx&0sK4-H2gA`kou=h~1F-)*FL4@qd4WDzLXHBBs42 z0Er-yIjlcb6m2vIZ7e5tG^cblC&XlmwAQRf<0eppwU0K%0`t@w^E8%@I{sIw(b?+* zMY<+QnxtcGlqgvljJtDkgr764A z{gH)!SJjy05J7O~#21lSUU+Hbg4*YDzE6p3)yUYTN|&qY64;TsE&E6S;Q)3(E`*^e zxECylFSA$Jrqq9!1_z=BOu+8=kc96jXM8*?!S`*Q%s~}O_RhsFNpr^fyL>Q3iKQWn z?wf+Bq41Kdanr0}q@nT9sBw%?doc3fWd5WO^^)Q{Er^;BBgibKUmYI8x;jOHL3)Yr z@6(Or*rZk%Bbq!U&bxXW{j+HrBses z6FdNITx2dR;&xvxb_50s)jy~lD#c}oZ>`U!pSJNrFt96zt6(8E05yXqfWAv0_t=5V z0_X!O3A%U0mH?wN$?W`U@3b5(joxd`89|@H66d98y5XyGp*l={j*@o7Xg~906v@;8 z^Q1@_oNM6)`K)_HJAA#x$sPT`r^2ga-eIIpXg0jET061aO^w6M)@%e&<}lVvy+rG^ z_iu%kQ%Fx$UjTf}tev`<@>^qr8()2z28pA!2!m{IH_3%%Dwn9Wl&R4?9HMX9 zqbevd=pAa;L?y~^s+$IXCIoBm@Vq3~{>~&qEp-yw__yc>a&$GJXwHubHmSov9M3Sl z!qu8}hk?t3?U7bRec(eS z4mD=1ya7sD1!r~Q%{ow0Ta9d4_1SrbQB4@JG6!>!SxZ9Iw9rJ_95DkNZKoQM+=M1t zv$CVitAm-}W3z(Quo9`!i?eO63)12Z`u-2QMImDCa@IUIq-si;2sl<2X}~#cn48Ij zZJygY!=3~ECy`ZC-)$VSmZD9PMKNnN9E1&fPHfOE0+$LL)QGge>*s5H16GNrKXbSW zq@e>7l5c@$!k+87uduEwolO0TTGB1Sj_a+o;>|qLfdvTx416{jsL0IK;a>bJ$obtJ z1*!x(z>+pNI(frp4XGw+68d08gWhv7O%S<-Je@pyT{SWbVSyw{em~KJ+$I6z*pGXS ztoVfI>AD4|Gv8r}C3C`=nug_m=g|nlED4yF7Gba(PMqCYvzeGC;#Pn3*?i6Avu@ z$;5MtL0uVJ_*}{p4cgIXMBAFx;-*C>e2Cn?=A~?gP~UWGb!s%d0*>yr0mTk-`?y;hC)6*MFZGSh}elPLgO6AJ&CH;NA!Qk-| zT~%|PrL}*LC<_+9Of{L(GMQR2iOx@L2hBf;Hxwzq<=4yIO57JyoD}~llv^9cDXad^ zoN;T2Ra@~4TE198ABibpN5=pchOz5*?vXj(()k8N)~=Cvxc%7t1en-hu~c9zHQA9) z_eum!vaAnX*nlG$+Y&cle=of`(O)xM7oi+7g+gtKTrZF<;aRoyq`;`HV3GDnACt}q z)0s64lRXTRDGZY>408lCet2I<%yCf@JKu1z<+~I?!k2I{%BMV3Mz3Jm4E_8THTdW1 zDf}=>_Xxe8k**b8Mg2D70+vKtjZ>wL+f4Q z-YjVrpl``THcBMDCE?ZFCpqtJY2EE;DbE}+-R;aUS^d1Ul4>5svtZ~3 zB8$6h{8<_OEXU@&tr`8W`y4JSkK}q)BP??-UP{eW3|p!AI|^@$iBG$1>tl`Ipxn83 z4;#Zqs^YIXieac_4#SV!s6&z_uwPN0KqW1WNJiKj1?m zfi8P`Jj~jGn}z@$rkl+PB>w$?${Xt!%jp1Q@4i?n!;3?R4E=Eb0c8j0|6Bx%@|{RA zTzqi%DQ)(&Bd#xY!i;s|8^8FtC9mp^ghCr{>`}!(bjO>w`0TEFMx-!jBB)8W4C}_G zJLu;dOE(vpakc7AQl&=IRI)G4R;E15@>A{0hMB90VB%9pa;?hv8qTdQep#aZ{I|Mb z7VCpIx2ZezDLd4Mzmu<;2z0Eo9Fw@&b<@_2?)zHIw34{N1m*qBcb#1O_U;@A{!AhNs40-!Y*iwZA`JaEp{<+iJD zSqYTnwl|((mU*r9pv36iCK9ea7WcSFyr^T+vlo4VjW6;FE*$GxteCE4jr|#~2I{AO zw)jsrESaE`=?@S@UC$nTNqHarR*A z3bJ~ni-+gCy`|s;9K5!pNN#GkR7Q&aH8?!Z_-F$+vaMPG3Zows!kk;gr=)E)JFH|z|_(0J=pb7gomU|l0gmfpX_O}7@@epQwnc7T*=%A=UOwAYj?|$r;{9$ zat;}7+hoxM{4(3r`gNwTaBq!-*MCV(CXfF?(jB39qqOB9RqHnkD>VoYvUz&Z{p2)h-1%t?7+?uFAHc#?ilPQgLbfG^6$t zY*5fym1%5O@I6XysrobL==i>!cJ~7{*>0(bDQG|H#VJWjY;j4{t_|T zUDhGd_8YWZ#`+$!D$f;;ElC1bpT{QUNhLNs)%}iaGcJS*aBspHy4eA^H*JE2*aLif z>`KJ4@w(~F#(GYDnyA^tOGse zSL=O=ISJJH>&gJ#Em{4D6S@VA;5>wWXP{@*{$Ykq{iCVWUS9{1F15P)kwzchat4?r zNlXqIKQ2M&V~%8@p$FNiQ^$Ui4%R@(?=g5ns^SJ9&fQdt0{@1?r7gJOn<wMQ^j%n6!s|)J za~n~7M2-G)*hrAHsXunfcY3(_J#X75X!NsLn(WVd{i9eo5wmIL09B9Nhepg|2H1Qj zwKeuN6=;BEOVL8DDX%uSrvI0w0y>hb$`Ec!3=4JRqHW$M5F z`7yknB%~Vbe@tu9{ONYaqWQ-u0BR(BNz(ktcjTowUW8G?!6>0}=pzO7Cy~R35`uhN ze~!k4oR)Dv7v!20OP3`{YGdUKg)}Y>xK8Z6lB?!;V%C&bitn@enEp2S=zt}OWU^Io zgTAQGj$GTwjMb<`dx1MESNWJ3-|)e^FGIrMW8KdokG-9EyJTw80Ce9*WU{{vw zGpZd~yoFiX?^>gDLT?FN8C}dpX!sM-{|jnO!BN4eJbNnwxcDw#g z44+74)L9pGjEQ-59u(-c{$oc49JQan77x|wN8&TdCTU_6r@Yp2x|51s5sBy8S{2v1 z9SSN9iDT8w($)TVl%$&N*MF3h;;ZM^)fK9!|c z8!kMtX>)-hQ%yAs_L9Gu58)BFY!GCiPw&MBK)~REOrL%8ozE(B{L%$iX8pHNimxaW z^ogxu$K;AIS(^)=i3J>y51LR`u6zsQgJ`is<~X4>yqVK}HO*`6L3c)eN|wr zGz5MG^w~?$H^6Z4VC?;fFi1mJwW%;Ph zu8@LtERL9lHyV3RjP+K(XXui^mb}WUho>n4go~vGNANBNB@DY(20Ci0SS_H@-ak5L zKoE!Pi_fPL$G;lQ5lr``&6l>v<}YS^R<4_E*E0|yLlj9&&t5zxd$`+d35F{Php=(Co-{sW4mA??(-Juys+5dE zaxY^pbDE;q?&}mE?Fi~T8#kNh%AZ>?)jFPy3Vtm42&%jl+;d_awVES(ef3@J?X1}H z$EqNi%3j1FiDlxbUC`PH|7e3d7}B13cPG2CF*etFzDw z$$`aw-IDBl=>lz4FfM~rUGIpb{c}WEeb*YFc{Et<+Oz#$XK=Eh?Z;-jn9Y76tOe`i z>@jBQf-9c|L(TFN47tKCI@!Zpy z79cj2itys0DmNKuk>AQT1y)Se?Bq?#Dpo&i!U4OOJ|T`OP6z2FSfS7+5xq+=8JL=W zt!u$|g3drDvT>$3U%Pz`*J2T;vrF zaw7)}gZ5h{2(`Q20{4i>TN!<5;KMYD=B5mCJxPMw=E+sn z-KM%_0uNiUd9^(-ZwyL_7APfh!!#VxB(*V#&qS~JF- z9WI6w6qZSOVYvZteo0F)B4U@sr7O zpNy3m8@~K&4#JDBG%Pf%Vi=OY4J&={Fr8rx+Pxvc3yu9D#tLEl37qyMt%)m+?e;$^tLbD(C#ZJWTzKieF#Ut3%=Gp} zDDf$NV!Mm|1P$bh#nkY~dJUrtCn*N8=?-$_D>9=Qd-kl*msM|(re3_wyJ{6mVheu% zHcB7LxxRx&e%;=YRxi0U-mofYAWd?eW>kwP0jw-80?Er74!;Bq;vp!#LBqAoxtWJ; z4;Ptyau!?o%L)bXgBy60ZX&s!HZQZBRaj4yu;3Y$r7O~Lp;7o#Rp=&B?vP!pWK zOIBNckmd;0Mb2Tie}|!l7y!e}4|N-ZDW7?h`FU@T62tqt@~-1o0I7G0H(JpJeq75q z*@0^7HfL1yV*by88rtAJjbdBlUd5yQ8O8sgxR^vc8;3jeb?Ms(?Nb-+(# z`1Yd!rtxR-_#|scCuNT7kz&E_k#jq{`bdC3iDS2LFER36f@9 zF2nMz?zM;5Xi|%a2m$nn2v%3|Jnhy`_eW);x&TjR?Jxt|uCmOvd7)Jaf#)yo2@<^r zH0v27RVjZ&FJ&|~{%i>(i*lrjHYSNC1f^+>X*MQ{Hl~WYCW*SHh`JhwNg7WF9xe$( zGgZ&roKeQn3H?@2%6vQ_h~9e^6aD9tMlOmzmp`dxT7?U$R}ve_3NOi5Ir-R-3SQrFt<|4)fxfJ!nqifqfPhyq@hEozTJJ-Kb(th+!#A} z8!I`Q1zQ?y=pc=(ikvKUf^6JG1sTJ(8M6a{1F&s+?LLD)1Mgr*#o|`9;PlvX^vBr| zL?b#}^G(H$#xdG+t$-$6Hy=jiM->Y;1yFjyesULruC*}#7DAd#MO|xPuF^|G9$f8q zZRP`q=fF*wY|$g^UHE0c9&D*Mu8)F!3%9ViiA6*q{IqAKOKyhlt!}Ccu6852oHaJE zFwxcjH0@-dFPmt&p{DO9LS#&CTn4mviZ%)U|gSZiE`j%3gWyE5@1V#tA4Y2wa~%RHek= z_Wq$<_zRPhAm+h|`!CkxG|0H1TB{I$iA8z)|46#Vz{-B7UE8+Jt!>*jZf)DP+wIo2 zZQE|QyS=r$xJtvh|a)V1?T zwvH=0NC)CS?0%NHdh=hMs8%atDM4#Qv0?=@8V$Ee#R;!lQY|kBxyPz>CiQuT-4po# zfvTRk0lJ0Z?Ms>~(9*1ohR%q$=6rlds)V$<_E1q+SI$l-zx-<}unb!9lU+sN&^6~x zOLZwCI)tm6h4x}UGSsdLxkm+lXLM`2xZ7q;!#3&wm%)9Y#J%1RP z1JaW+{+q}sDX8^}#!8?^0Cr{u83@d~>bi(Bi_CSA08w{3?rR5llN178oT?UrE>zEU zm^GsZWm^%@x~nhZHvD=S3LiqcdZr^Ks7pw2c^A)o?fa;Jz4}jaCQmC<*#2JSFED*g z+T^SnizU!52YCfPJu!w=z>t&l4EDJNJnh428o@6CJ}Z=>J>on5#yfCO;FiXMiD;13 z2Ko^!;v`Dd2xI7B^dlbQ*8M5u5KP~HMOp;-pqO^h?(V5y!!zJ8W#7O*V#_qe7l>BI zjD|lEL-9Xap^*G7<5)wik2svJvw(XxH!arOV8wVvA6VvCXybFF=|L$jpSN{SG5@2H z0G4COGwg*XlBFIa)-GW&%U(?q4#H`Kc*mv^*_AdBTj1QYZ92+&{E7NqqfFIy*bBv~JawCb`+I_y?2NzTH=s#c5rs&prj znv=gCaDN6omvpYp*9N|=;d?hD6VozF41KAy3$=NRZ@j(P-2NL z!9Ns;n`*zyg|KE0c{vfgip`p%pl*lrJHr8Oy-jd!=q<5pxUGT4rgN`FoG}!tum|@bSx9d7g+Uz7I{v5 zN4HUxh1?t?+qe{e@aH5A%!K0|Rl-j!?k0duKVzmBvZnL;Iu!8?v3@<8Qyif7epp&n z(eqo}a23CKBysm^#ce$9igKSJ3= zrsP`G^#eF&mp=(zP~fjU>y7*LjD74b#n(TizuKb>^wl?9{rSTqpF`@yKq}wYU+Z#7 z0N?ZDMx$o)@rK+;+1l>Xo}XUUWc7~zEmv7!Y4eEvEjI~wc@yjXiHo?WxY72rsPPPfo2SIWbfy`axDgU8-pq>}%b=1ZPM z1)pv6wKwN$J3Wsx`SRDK0@C$(?N+LmdCj83XQ-NL&O?X1$Uts;2tzK1fnJoizhE~t zrFEzP!C7vUhEJo>1sWB!nLJ=b5qq%W3vxEKZUpc2txrKHxWsqZZ8V3Zz2C?e zO)9UsAutUcdp%!buO)^jEqT|>B;&?PHv1jmI&4~}HJcR7mBgn-apLFNgb_L529+kT zZLKimVIk40Ehqy>L!5VfIPa}L9?UY#Fv0(wvdlPtyXTRb8Dn; z?#PRO_m!ky3dC`C$m4;ieqyOTdTsP}%KHN3W!<)h7El8!V_cDK#J87bIU;kS)*I2+*+&tt&JaynQl_ z7N`52!ek=}y3Jo0f?MHw7U&)2bUd)|Gwb{g#RiWIOu;|3yhUU(!*L7wMXpxt&wdEr zAG*nq%f#GcjaZo6miZqd{w5GbGHO>}*C%AVaOmLZlmZx3R1t<$F*!dZC1Q?%84g}N zxJT^p`)FKLV&LfL*yw6%M}J;@egp5YVh$ohW>$xoqC(g~IFj$DP~KN1)duJ2lF&Az zEQ{ty*6?MiGM2Rik6)Vq4Z<0ZkWqc|mtst4;g`lnNQOIcMhl8fJ=6D#?@1-+ryah0 z(Ctdar-Dq@R8=P1GWD@@qMNt8=}NIVbbuNSWrV2kgJ!x9wv~>p^<_JX~bdim63_7Hs(3b(T8R&=53UEhGa@lUl44U z)6$&iNJ0k1fn(Iwws4XpQNI__rR}I{bvt(}icYI-%O+8vJ`i!D);9d2+d;U;F-Vdn zQPE4DD!t4z3=Bict(zXc+EZ?{||=pAJ~0x5TX?LmGBczY0~(;${mm>y)ygAgr2a!HNKTxc>kgjkaHvF zbMa&O`D&=Aqf?oO0`8US5#q70oCuyYD#te-a_GSIO#dldqPU*6^%-<;*Pj}j5 zgz)Jr+k?ZJZThXo2#|}YBN%5`fwW|~Wh?XlcybjOu_EFJp-D*8A zcb5sOm9uGblKPIAp{~09 z!Xa-<_*)W$XzFHT#LHN0umMlBaX86I8)hZVT4oG5QD6ga5{a1sPX*ap{Z=fYt{mw5 zT*MFkPUI?^Y;>mW?hGjvCkVxgja655b6EFMg&5f&;{` zPi*?iF|Nj8pL>UEN!i>neab@8S`~c7UAbTEy69IN2*)T= z-kPw*)%5K>r1^L|E6bXE&OZe9N^oOio79(ednL{B!pRJ;8D^hL-@z`^@m%icRrmdh zf`y2rSJ>w2U@1*r;~D}5oEJ(<2k#o{7k`EX>d1R)8d9Y{LwGiB-Mhw^)z*P7Mnzw~oaKL3F4k5s6 zJ=>ZoW6g1(lX!_39EiB+^n2OIZ$e2{WV(#B3KBD`tfSb210aOS0z`RS)~ z5`RoV6(B05844uGnlDbO9kaavoTrLmUmVc6$;8JQHIC(^gi+J;T->FC|lXxl5SmZbA)d#je13^;e47r;m@oh@IA= z>clQ2g{K=RgRZVHIqiR-k7>2M7f@Vm&~p>Dx=mUUKe=Zm9%^Hh9O~7hwp-hDx@ao4 zY;)9*21%ljw^;>>&&-GM;BW`YmSMU-@tc{9gz_NDRx&HGxaD#cTed9j!)Yt|IN2%b zWGa)jmN$=Ymr+DARiFPE=ddnbijmqlJ+zjwM>)ND!UEzhd9UFQ7w0Zys83ZfovoWW zrlM=2Vrg`+EtsEQA<(8*t7}T0TY6c1CksFbbR>RqJ%i`7khf2%&nL=5ignZ4N6_|& zCCSk%wAy+@u{D2ol7i9u9kwxD=Z@auQ z7-vQac@U%A+1G2+=nJV!%#(Mg#lgRASeBBU4^>7DVFW*9=L0{4R27ysIxSzyvd!$6 zD&8dqc9tF;n`aPB?1f8}<=DlG?3AX?H`y zTmWmD04TG;VS-|qS7;0=5DOW&Fq}fWD_cmFA}oZ*$S~8Sxx%T?f@#4DQ5DpP1-q{1 zDjmoiH^-{6Vg5tuSK2b9hj679nE9Opxx|=O5|ii_x@SfNlT_AWjDl_k-I1J@yqSJ@ zn(Z@Yrkx6NW;!BEsxES-_~JGMCoaq2?GzCnImM~1zl-R%ZCEx%n6%+|)Pli2!ih+r$RDtWw5?NEqzhc}1r?~>7*n5pAbw%p>+iLxzEGIL~w zDdYy&BEf&O;3o*)<|?WfbMT>_o)9YL3HiA4=r3$sgZvq{DBKF?P~YD_1tz)wX)OA&gSp z+CoQlBeD&x_5d=uCTp=^icwa1`x59xRjCRoIp(DriapESMVdf$In$D+= zkcL#p@>pdi3G8y*EtLi0evwzE*&ccgreh#MrYx?U(3ZLugeZK>(UZTx z0|V?C;DQNoA*An?!)bjyv%x&^4d9;k<(9yW?LAu-h3q$hdl0h1y=3cGj=$#GppRDJ zIS7>!>~C@I04@K%BN_?lNq;y65|lDyN+XlvJQ9r$;(RYY-V!Z(8rgrRPXTxoY?Uz*$6!DISe zE$5LdvXxJq;IXU5lkM#QrX#nx$uvuSL@=1O#*Uk^s4tVgSRIU2|I7@@XyWq}s1>tB z1Kjp5y;g1FK*upE$w!-Z8Z(Ou;U(r;onpOK5zWY5{b*O3G}Kb-+)1*ZJ$m<4Tq5Hf zgUOO?n}=$i+eMvaZ~TSu;`{Q2`6}VPPgyh2QEQ89S40r%&h9QF-Acr}t>qWMeEvcf zd=&QyGGt=r$BR|}KYf@EiH^T4#SD131P4SVtX@{+JZ#Z~Bk=zAr{9`Iyc@iXe#Jgg zL|Q^%trDHtJu7Qs2xDc#BIQvK@RDdQ-Q*)X3J}|w3ybS-Z8(M9j@q<^cfuu6xshrZ zm8<2~)@J)9r@IZNvl$ITlN z%x<`l_qN}dcLLGneQrA0v!G@UW0391>Z=~EA-{E3Tv+Kv>2mRs!muZH4^b%MuIEmO zG=jAm{)*NPv~KRVJoAH26lIs~Y$}8M#oIaOX|XPpyr)NuQZb)`h#ek9(X<{_^=X&X zF&8{y4YI8BR4TA%*ggnuFt-kl%{eTvL!J-02C2iS{#4MiivEF+j-nZ+XEti8gWSUA zXCKa{9NtpXWNqN15G->c9DE>D*}venESnyeRLJbmCByF#CJSLI!+)@Lmjz0cd2(4W z%e-ht1dGf@yK+(TWJG$B{N8-BVV9mK`{iZOZj#Jl_AS)NmE*y}Z(RieluH#eP0&qi z(l2IMcf$r#NjP5cacNv$DB3)RXWhel{HNXaP=+4sMd)Xf=xe|{%`zj|O{P=jX{(+6 z9^TwbC!fjVdMv*l=V{Y7p6y zhR09y3fGPa^4Q6eyCNC=dG$+(eyXb4a;*lPWL#0j97_%X^p_dp>L{P`*XvBDtQ5TCjJE^;gX9oP_VU@oo+J zXQmyzL&~C`zW-2lYNY-~5aFElZG)KihlWs+off~VjGB!{lljXu;xkx+RUN%)z;N_M z{+P~|xsy#@{SSbhrhwzT9qhTD04${PSHSNg2WWi)W9F_j zVy3~;cz2J$yi!nO$4O)^OZ_$qS`vOh=b@^(yd#Z}!gp!V%$1@?qhzOPeD4~}d2c{} zEgw?-z6CKvpF%+}jVV>Hi1zA^2*&qV0Ong-Q(UH==#sdFRc7jZ_QsW6+@^eO-5py< zcmT7HM*qY0H%5*++d{gQ@z+M0xi`@Ro zD_Gpr@bx8;!ql|77x+NoZd$u%Yf<8bgAd3_R{gqJF#jnqcBINLUkQA%n(NHYG@D2B zaY(nCbirWdS~S170f(QGcj$XUJb(CKLPtD5h{Iq}mD30V0zNo+>9xe@F~;EaGUo<7 z;aX*V8qa@FgT|f&O~1DVKLjvgX1Kt%KDFPjddOVfh9(U1xKH66xPr2aqdc$Syf;f* z+l(pO7Cc>>c8>U|7c$k>4tfl;!j)N^i_}KtBzw@#!^))QeXaj3(7Z6FuZz|S-fi&<2Xjv& z&+y^TBxefj|69Yq;DyXrha}j93gpyCl^v`U#8*6sfImgtmh1<)xeQhwZ5jO|N})W! zHcf%#_WHp~OJs<9c-#(E^sb-&K&$~JQmN;GVu^5X#{6SHDk6I0;b2nQ5J}1TmBElG z>09xSBZYHVeX1a{mwdW)q|^B95u#^WU`leSE%J%Bhrwb6A95qElF}kmsUL|OW&1ls zra$4mB*i zz#2_m2b8wGZA)H!mGKE)LY#GcYyxKEAc|>Lr3vxKM2w6eu$e7B0cxBGjdIPz-aJEM zE+537;YiC?#S5EneCvO@u}Y-=6uwz`XzcMt3sB`4`#Xy_4&%W{=}rDCufg zZj~maoJ-rOVA9|$O};pHI2G*Y@0gOeV`R~yD(!|+GurIQ%4VeCZ99m=ZOAPW39I!y zlwhDdr-V<_K2Fm-vbbTYWa}Kaz~ADeEw=Q?chR=SC~#*N)?bi_1(uixg^poczRjl@ zEJ&!^%413c;^Xzs3Cmtbx``T;4svONuWTZM1jXnK6@NC}1bEAvf8-=VY#H4Cque0y zN5si^nv4{w6M4e!hMsN%*B$i;S;?P1NmIf>T_CyQ8(UbUw*R?7`YX3)r`yrAj-(qW zRzANF%f**ZrpZYG5u<^$#f=`-2+*^Ws|al27gtwGe{={NOd)$IA(s3mKpVs}BOD^6 zA7+y_qmtC4YLS;hP^)hL?c>bMAmNui4>{aX zm50hE-j1`i(<$s1Jx}A>Mb4gW zw{!)Z8p(v>c`7%-`*%{6dU2iDvur!V-#E?uL6ym9vu$@~Q7TT}Sgq*65>b)ymQeLx ztX`-n2b?#r*b#}um`LeA(L{Z=Pa=a>Ush+q-QIbl`9wsc$C6du!{_v$#G`|=j1 z70I!J%&TTFy(O!rB}&``=Qxc)0&30S!5f{Gd}c0A`vyN73hnjE_<7!RW{1;A?nV*Y zs`KS2+^y7#K@YWTWpo~cK3V;s6mHKCI)&^!Wa{?b- zv6t9gzzqHPVw7VW+b(=bi%OJ35_Dk@$qQWPJykzXe&Cp9#2reV_;K~|8;|BM zrPaV1B6ng?z%7bbm%vDgNhysHzGJ1j@c6-x{I!fDySgP^2Z2Ca5Cji0T3N7X3kaUg z*q>&N@yqzIt+*hAho9-x2Q@#Dz5CS35Luc)CuvytD{;(#bDE z8a24zBGAdh6odE?&5-Kb#n>UCL!{8`YN!9v(^$)!<4$QP&r;aRB;bY1qGIF}l44n3 zZUBr1IuQ?p(zMoI%Fyp>rxbV z!ETd3YuekhJ1DiV`Cs>7|~xjF-fDL^3(vS2{0FtfV5iUtRAj z(}*L$|C8#TOWb@0ir&gX^j?)cd2fNNXnO#Ms1kkMKIQP*p{<8#uO-Q>bII@U?`Qo* zc1TyTX&_2C>ri-HzE2_un-$>2t881vDot2rE9s5An4oS`wMkn>mKG`6rl}v=-cZ8G zj}(gq_^$kg-ncYUq<7%E`utT`T%@ME_c-75c6_X%ILINUY?2>cV&q=uWsS>wHzkXIcO3nT8#_ zv9jEWsyfotx!~b?f^Ly0&)WAoNzL;8VvmFKC0u3CB1lg_gd0>I*^HU6-JR02{G|S| z(|E@OS1J3VcYKW?*#XFJ5lB`c;jG$o*8f=fQY6LSys;nENG@$?Q8(crB!OMNa(N-< zrw(J>dc!JQ=~Yx7L!2x2bG*%r4CG$aHtw+wIp0Wx1{TV7mH zb#+yQEkoH{R@f&9l($k&;_$t%_ULf+LAh4@j5MzYLxHo}*(ec4ctc=*?er{4(*aL` zQNSBklsO*!p@6!^rhmv0-wLYQeM^uP(ql8?G@IY^29O92`I>oVK@mwVYsmt@+F;;|}yIdBTY|0_HDUG7_w9L9K;x8=Zb_SgLl z>nw?O2UPH^2H*9Dpc+3d7qq(PG=vSgOHiZcZ2ich(#T?SRTi0`@yImBfb@tjh8I~v zI%H`PKI)AE^$v$XD(g3nGR3{@Tk&cCKm_DpVEFIP%e#zlTl%hDsc0`7SOi9p`3D-o zrl(S)s_23g$3EgCwA2CmBZCwP?va6h($fJMf#r&o@;=oO{<5zPX}4Apt{Hjqi=uMV zs^=lJs!IXVBQio6gXkH-Sxs8QZYv!jt{^&zYkUH2mnP{KNz6N@;UwN!?*`%)O6BJd)t`{yIYdLx+}8c;RqBIDSD zb-C+wVqTCVyv?jLEVYZp*6OjmiD|>+BA_VVf|ZazX!%Ja#xR@R9n)5&==)y}t|Wyu zgp(!3Ui{&C%H4!`3BmtC7&`<+%dc2a6S3}ZV>F24(e6`kPX$DNlTTYnxwVAvRkuNz zmOjjuQz*4j#^$t^>tcz#D&L-ZM|ihoSS~t=-O;EE(DR}g-1?_Lj+%Ar0v|2Mi*1&d z8Er-R5Fcnz1LZi6S>9V+Ot~6 zFUh9hEWSD~ic=+H;d}}rR$V@wq?1OTI)An4Bvv@JHg5Q^g}N&i~z`g7bNTTg5|(q0$v3NVm7cgQQNm zn;+o+>$5MQ6H@lodXTKFjPnlok7R5_z5H?#OQM49EDpLpP;w|Z-HdN zpw6dcTR@k;x^@y9ls5y4CrTE0Y23!}fmx8#>P%=$D)EWISXaH|Aa+FT9l*}WlQUQe`w;b?o$Be?QBo|Znt4y z$}-A(3%A#)IiK7jnqf}j5bhd}#E)^$F~VA^o+{sxHjx)4kUlW!N8}XK&oin)>}caZZQEM8y}- z2zuv|G)ug>R6M*Hme=Po19>vfer?AF7(GvkcjN}*upyZ)PI6uO`^5qK=g|!*sCl*J zL(27IF$~iahn$C}M`naQ`HYy4r+kq} zo8wXdFQHN}s6Q8iwU2&q8D(o&wx9OgTEsUvd;l+GI$a3iRxiEgy?;Bx!>W(mD2vhAJVhB_3 zi%=1fX(DI1q(nrQ)Ah0S@{T<9i82Fz| zkFbdH!DGdUOI-<6aE-FXee{IoCiyA|kgEijUjW)CDWiTA9r^Db*E?yN@WKU&R=6Oh z5)aju!6G#X&;D39Wq3u(Pf6|rTp$~(ghRYeQ)P!`NlY?Y0dlrW!hbIT{XP-=PijM| zeRg;q1)qTkXKB2~5fv-knN#mhUGPD1Je9ZV6S?fz{5F1oXaK(eeZh>0VBsQAZ^EV& zl`8h1EuU|xbhY*aP;6EecNZSvF#?URPm z4*Zj_!WOM5Z(r}K&`LnTMDyGN$O#iwVoI7<#^7JgxxX_OD&MPhEC`UD3<2jDK1ZPd-F>XA5q zm4sDNK_&fcD&nqSa)=#^wpXgpHnD2Ob?^S90eq-uI)+|OZ< z$s~mq%E+H$wX@(^8{LKrNS%Ao69m;&$$q`@&-X#n*7|2DNPB^y$skMq7h1R=A5P_% z^|x?Ps5Sm|DN4Lf(BiEmKF}l!{8I~*WP^Vy;RE-wz=K+lZvV`HeGMSplFopMfExM* zN{nD$k^v!w^pNkB>_fpUknh=`gcxqfRJYv$UcxVaY2Mm zq}w1s2rNh#GkhS3Yp@FG790?Q$^;ppif>9Xp`{y0YzXs04I+UgT45gwp8*@JL%J;n zg#4TVg9U_`7{k0YfylF9q@Wx&AS9U%Qm_o^HWd&Oodr&!4f9gPKD2w*=n^i}gLE6i zK14YSmdpSt2)f8&ADYYnCozEWF~kR2fa(V6!xdB_ND(jWLyatuf*{RAun%F*f~kNw zx{+=(*oQP`!3tGjeDv{w=b%S5U|!k*A=Vk-!p%sxbL>O3ncxK=c27Wv3W&WI={Apj z$bA-Ukr6UL9v}E0FG!$A_M!hcK)SdD5wu`@g7ATV*@qBkz`QfSZTR~51!1(Cl1CIeAIvL=`dN4kq&g22*j9`2~{Rt9dkr}eD0qNEklw*Yq z5W@!|g4zU<3slgaCd|t`C;=4~h!2dP1#_l@>;v7ZU?0lP01vXq2X=z&K^xL701(2; z3i%Ea2UJOr3_g$%R0c>=Ef6!PVHfN}ppo!i07{r413=Y2gV;KdZvV}Kndrd0KmtM< zLEOXaL!=Cl@B8dSJe)8nBfZ=%kze@M?C&HuuIa}>$Xo(emgg1ZZyvZnF;sV2;Ez*Ma~C$IJn zEO^u76zd|1eS5U+s`Nn%lK3VJks$V>w9kq9RsBad2?<(8L4r#8hI>bE8tXsYOwhYF{1DS5YQ7m&{$tqb1ra_+K^+J2x{i#QmElXT+!DL!g!~Mi@ z%JQp30f`L#n1iLQZeZXgZls34)DF4>XY)d^o7bRNZ5A%!yh!=pOKHxWds!?I&Ath) zs*krsu=@1P#cHMY5*pmdpOH3?sA?}P^Du#*_MZ=DSCU!?@o)PtZa}9Uvv;t z(@hrN7qMER<>2^6(_?)MGGD?@#L#|k=Db`+ypZkwQ_ngJR-Hz+6&CCrQ8H}WEY$R= z#Y6aWMX|v{UMFw8=Es1)X-8LAy()XyLt7e~4Zu|4nu}ivibq4G4oPUZ7JH)bMZKaV z)_C^`@6aXGfZC5&o#!6_2`39Et(v+b`SV%%`y&L-c)aA*r;JPD2VOL1AQ}n%L6)|3 zJ>9QEIyFW7*J&+$WSRR6c0a*hza_nOpJqR+j`Xd&6%v(9Zl8#VuN1Ghh`x`32p$EW z_J~U=K||Apu|O_8C%}dj1NPr*>5&UGb_p{hy=?0ay-j@%z7=mia8a|}iaWj)n#V6u z-WJK5Rt5ZpOahcO+u2A4#y2{BHP_xjFmB?T?DC%#gKZ^(z+)=gve!&*?P5X%!4KNT(dDkLM(h_Cu~NWg zhvSt_*3l9j{k_c4K0BM9L~T`hralCyc2z@`165g!x2@dKAGiWJ$%W^j2ik1&g>!Ec zAzl?COwTKMis;m2h`xLG0;yTq_Vl6DK{2bx|GLoR4MQXazk2E0XQfX-ZPG(*_{wt` z=Q!3}B_a7X7o5sFDq>5yWUWoOz#C8pwB$?m>Wr|;`_xC^%K6xNVymv@V@8O~YJl&^ zI^AZNqmhuOHO7&pQ)XMakFCS8w z8?q@pSc8JHxiZQRMYf&-9%KuYDd!=;;+BXqOw~np;>5M>qfZJk7XAlf?O6@c3y-`8yZ<{u6C zFxH(=s0X|qMA55m7i*fB8_DK#%>xjG@_WW4crp}vowHDCmgnWJoWxxcZCc9&uBfFC zk{9mhc6F<3$yX+s-?$eUKg*gR*UM4NRMqvp&w3C)5lU0o z2*|%PZSBLAhde~`&v~2^qtgkkjU+6q%0Bfceh8{ot1WT*t~w3&P^eWY6`F)}?gi`8 zyCfC*g}QZ%lsK6}Ys>)CFyM7#-N|rcI{|?K_J%$jJF29~l?Mkl26XDFj)ufT#$Q)5 zy-e&v^&;Plh8pG#VSGt-y=N?|4wpj1Q>>eR-ug8k9m26_ldZFPWAE|h&iZY{M|{1` z_el+d2!G9t0L=r^Vv=$&1~e*>6-{>8lE}(tR+m~Zx5O&AR=5*1&2TAKJw)3wbC_#R z6%h}-(>LGXo*|dRJKOr;MCc}lU-muVdspgyQ-#s0524nLvP#yJ(}kq}gu4+1gWCUB z%opa8Rwl-vL!tdf<*|Kg3K10Pu{#T<&5CY)-cN*-aG-fvYb`Lt8Ai; z;cCHZ8K8i_={g9nln+L8DS5O+QE0=Et$Q^79iai{g*l&dWi{QVp?2n=O@uLO5V3rh zR+r{fE1HT-)k~HHSv$0QZd!rE57!u8_4E?~hcEX4jL8*}Y<3;eO?E841fS^tmkjtQM0T{cH&B5bj%WQ?%=&me;HI;RU_iL1{BGx$d#EV zis$X`{z7>CU{upU1Xu8>FwyoG`h?z>S8JXOY2<&rr-s%r{+WsBNv{V-F?mojzYVU% ziv>-bWJ0i4T9#enkbvzA{E0H;1|=RJg@`->Bo_FTm9N`x7Pb!8L3CM8sD4Igg)y57 zKnv2$h3mwD6uD1ubA>q2w5v^_xd=j;g|@aY<2PZ@!q7OmYson#&Wt2Rn>koZ+88)i z!B6%`*DyvHGsG2IBp7y}Guk;}dJT4>yzN$XhT@#EiE|~JXlHBF=q201^3lrFEDR7p z`Fe4Ph!L6hM-bUuL1VFlQr6#;^=^WgFJN$YwO9>@@#_fn??zFQ zs=t+uF)0zhB3qC!HVVY)ck7z2vOGGYD2R_ZLf6?&38<$OPK5?AL4S{a*o4^j8J|s$ zZ2lmJ-u|vJB9ttzKCh;Xv;Ggx@(|-j2h8dV;u|bZ2wxZ2oC4xdpP^|0JRfy5WH3>| z(Rvoq6bE^VYxV5mS3s!4+A!0=QhXl=Iz{0dnG>$TQGb$3 z4wo5RhC`c@(1Sflg6EjvhWNIC&4p5?->1{2!&Z__c3O4r;X_oXag)n9smPnn&OTeB z60*;&;Z-J6U?&3pJwa%cJ+)VoJy_OpKzB1$M#QV9`0hB{BCw;Lwv41OB1$;Pi=8Y7 zrHgW(yhbd~Umizo(olb6odj=9PsxLuy%2*zD9b`7Yr=qW#t+%Uf#EP?xtBl`4nQZp zi8R%}#=@fyV1wMt27&YLn)}F(JQBPr_Ma{LiU_MCN6kyVhjT7ml13DcY4GUGzxKSz zkhG1ez@X&XaIm46rcJ-(tHU<5BmEZNl$;fXdLOZ%xmAW8GTdF1YQb9}6Z~qSD-1q< z{~n*JA^y?vsjS}g1Z74FFXBtj7i}|0M-WjsB5~S67-}nwmxg)w#;d1V^Pu0>x)~Y) z{|#j^(v=S#GSA&^@-R0!mbnW$e9GHJRS?wr03H5<6EQK8f$Y+0Dk33iXc9_3fPDvkFkwe}g%>}wm}GHGp8jsW%hMXDt;6kdRfmq!4g93?rL(Mi^eJPpOFXs3HVU__Dyws1o~pL>Ea6Oz z>?b7;1zp!ZlPCiaJr?%cANSR_K1p;EC$8NwHh=OAVb;w=rF0e{+NM$3RC;c=zg7u! z;bITp7v;B*;!RNlkQY)xh+fFi*S+ofJOhC}9_&2G^k4PP1Y<-wP6V={hSr0exsHeL zyHr>XifpFS^G==Xxam|1Hys6|ygLQMKERGIRlgH^71=d%ZKA(LBZNpqM&7>q{|?%u;1imb zn{KyJ&$BXh!e`#i6oOyyqxxM1fs}&ai>%2>t6#0iS8-3Uf&SFd0*7Z~I48xoP0_9G z%2pPNkif{QJ8WnQ3Q^@Fv~S)>@0ynDmlfxS-v>MW3UAYQWjVk`<51oUBwQ^Y4MF#1^vRiw2@cebkR31dY(tCE5?x(GIlgwW zpx2K(-(738`v7Qqbbx^=}Wi5A9um^beW>0bFs73SnnrWjKp;6ursNDewfjh)X!?Aq&c? zqAX5&>9hyR*bSjkhT!$*8T&}4<%y#9ye)5eNCKwUEb8o6Zv^YmcD7Y4HY;PW>v{^S zCb0Dvyv62hy`D5hO%_l-K8!b3rNFXu3ckAE2i5Ml7R$?*04*p&b6N&_u9t4CL?LHa zG+dbTc4izH*K__(1fbu?vaX*CCk}y&5WUW!%eGis+Yo#KdcK?!nlQqtcg74?MtjO| z<}u++x94TJ!cXn+@SWK-=PS->R+SsW_9NPoCR&||`LIqQ|Ml#P;(`X^pP#y2Fv-N4 z0&|KDX7TX^_O|t1M06|yl_|~Of+Dl^O4+q<{KE!GKwhboO^@yl=YRE=77YS2as-Xv z4ENr4+q-^uh^I^Ge81UBieOYJ#Kj;99MLZhI|ln_i4=%}5A77w{D ztR3$bU$6TjzvTs3EA9W|>8k^xdZL9DNs$(iZcw_B7U_}>>Fy<^OFEbCSh`DUS-ML~ zy1S&i>%0EG_ufCdcjnGHbNbBOnL8IV^Fm8E)vUhzu;b#(ViRwk0#zD5Cq#$&Sa_4a z?{0Uc+5C96v-xIFU%sM@?tzm1uVLs~H7uvuUH9l?N`bW)yk!3|FP4GcfZ>GaX}W|X z95QTw!-7+*Sra0HK^6L(LX>sg&($HQE9@h1;+Fl04*FLrdm;9G^8_fTx3I$xM!J{VA;;Pb8(CuL#rX-Ux#X(6i%UnbZ-+SV zP7zxFh6hawAEGOjJrDLvRPU9HyK7yC(=>9#OcW|2{nU8LRkO(LHjzHOCJF*-86>i$ z%h5*4WccTj<>hQpGNt*HcKk1DbH=aCqq`H2DD^6A37bVBk5X<7?)=Ldo8y!M3;lC|DIuxvut&bU>VCwQ zEME*J8S8>u?}?nC){YhSA2vHOym^Dm%F8^UgKrvB@L|+TXUjsEy(>Dh$DTcm2H6(_ zA0OJ$WiO1}{uTwjYe)i)<@wbE(PQKnR8qZWWH_^SNvhG^$LSewECbF_{jLjM8TG{q z?&4G74PxD~p{JVsTzqX8k_}&XlT1Ce|mhauqosB9h9DNvG7>^QO2E2 z#m?HBS^HpgR^nr0HFwh0QyN}ifF7h>r1Q%?3+r1c=x`uN( z->=U;^uIwQh_3#d#7sKbHnMHNmegq!N^KMz6myocJ^JG;B{6O9gVP(!A~WQ%bt;yp zbZ#F^+Ye;I4krt(zIM_Ce-$<}t3v%xIg;bd1WfPJAh zYAUN(wDL;KVE=Z=Zf z)oS9XALfa}!$%kboDvLPBnJ0n9z#Y4_sYFzAyP3-KF#sJ8$XYZR{UiC(c@^UVx>Z5 zD99nsEQiTP=AK4bd{@`p$jAYT##I3i$Z4Dh z!bH7IbA0(K!>|a*Da=_nn|J6N5(h%!*NSFt@M|{eQ2rXFfyP+`e!aG%udPnne1!(f zebIvktJWY_1OI{g#Y`!>;nc5k*pj)Y0D~4!^cCA!L z@j8ujEf${gbL$_IE_CYn>hm{t-vT+pW;YcrRAb3)CHn4(Xs(9Rgb24T2*AuMd!ssU zWrHNunZ7KWH>{zcY&7_ys&5d*4ddwkSR{*+Dd^=c1*L8bLuKL`2}o9JX09^A#ib;l zzR7afEe_1mNa-~!AEf6I`6!nRxu{DL@>>n%1yUc!mpmLg;P44ituM*NJP?C%I|1>-D{^bm`4bse1 zyaq4rDQfUlN5Qt~tfT6=h{XDkvp>b5h8ZoTt2k!SnX0$T!Zo~^6z=l&pIcC4DJvR%H6w9mdQHB)^v?APvfzWPRMdyo))V! z3%-QYy3dqqfsS||~CYiO_c9uQuA+JZ+Mix?0`drIX?4sBlek-o|O!}MF$;*G3#E{a_ z{nTAKxx@i|Lma2`_vfJFZ2hg0dJy$Z|5`7PBXMiPF5`s zZWiw)1D|&)=3Xd{O{CDl4yyENe5Kv)P#B|FL+FKidQ&17$tj#%EU7tL+xBVF@g$nq zY%*Li+j=XhrtdOJq9D;H5EY`!RSjLSwl(&P{jh3w2Gkbpc^R@45aHVaMw6>%1FXXYI_hTZrh6rbi&6i21 zwgvVF@o$fA`|8(q9=oj!$m-y>KCZeT7-+jPY>#Ymxav9|@}YPqKj?ANkL0{PDW>#t z0r$i-WokJyM5zkaeNyfZO{|%tMZo=-PzD#|7z9$*cUY51X#864pHUH7{x{Tz9WSIT z6t(L4NW{BLqW@eC^DVQn)xbHqPK#gY{ztvae6%i%gB0Z3*U@&!wX_zT;+E)>oRVUe z2@-G1U+NLP0}|9K4L2Hwlsui)r1%+a10}w{n_(oDCC=A!z?xeBt~fdV<<8j={wkcY zI6h7>A2AMxg{VIEK#$5x^!)@EDiaY!`k`aV&zV?p?s_-$NPXQ>Nnfg?CS&S+1h?O9CSf#p{mQ7rxoT(KTKSK zl1HxtIvw!>K@n)pa+!-XFl7Dq?MX}yxfjwO`)zehJqqNL7!0d6h8q^Fwb%Zhd;rKk zs>1~IIGBjfcsc8!Yw2r}`Dxckq>fYd)GoF_>G2;I{gb)iwr6f~+xk)!HHfGW)s88- z{A5fsI+KNIHGWa!;7Xb?J(s||a9O>4L0##eUWwXB^2djH?SM@fO>P#jTH%BQ5XD{pe1NIl6*r?FF$G>xD{xk zwgPV;Bwu4vM5#_uPkDor?V0=L*CDT#X7-@L0}3pq^PM3<@@H%cVUCQ~qp#93e;UwU zD0BvN-~IF-+j^`~5~16~P4q(LqIR`kUoq+Fd>Xuz^6)2K|MFvzvnGo_zB+1W4MMJZ z^mRkveOgg#&HY)%zA9rE4$W(P!y3mTs``P*Q(+*y!KoS7I^=Bcb_b2rrT5XWu(na()Za^jLHQSEwCK*jf*BY_4qkU!w@sUQd(DqL4d%RA~L_3{<*L*&X zpd$r?Q&6BNjZWC<-LLVJ-9Y?=-P`e*Xf!JEXYQnQM{-Y|`(@qF-ONb+NhH0$&Rh~( ziJl6#D_rwdITbv3?x(q@o5$_6xPeR1$X>L|utfU@ZGDLdR^+i>JIu=XQvqQAr=TAx zZyCkS#59wqHIs$ZsHkUo z_eCz3&rbyj*K5hWssgR5HV53pbjx0yBo8=a`+Vs-pm`+!n*SIhCd9aocK??OyM*XP zBpI4Zwweg4WN_caohP#EiGU|5pVUCkSof;N5!(RXb(W+@-i%cuop zx_AT>-i@*N$CV4#d!mgk2XeG2&3kqQj)7NjXeY2IJiEkBP;e|uEXaCoN630=F$O1^ zGCvKN^2W3V?~Yo#`Jg!OF#gUQJZ;HsT)#^*3f`SGa{KnTWIZfkZHN$J_p|ld&d?3L z(Vsp$XZ@~zCwSMMjT_htRu^aup$pz+;tj8uJ(Y7MZw)rDTA!awUbc3-CWKhFj$6Co zu{CAsOQv(3yR9_E6GCRWc?8B7&D?~TgLe-hgb?rFL=a=csweFa5CtCKmhSA-ChynC zk$UW?gwv%X12?^RW9sWIx#gkjVN%Z&^$H&SR!d&U)Zqb#bBj~=bk z^Mt>Wkxo^-eO=%##nOzm)@t;Ixx7>X+R=d%`H578>XQ|^$-*DKv^U>D^45ANFER9n zdTpM+_m%X6s)j$U3n9#;{(B_8%TuQ?w%$P&LPy8bu=NGPONo-&|6(PJdj3mIdonHL zC^M)8*2KEyiBMCXlc~{#BmjKS^`N~!O`TXPtE3*CG&P})?Jrf$P7@=5mS9(eJU6)@P?c2v|$A0@e3QA@Qeza ziZvY+#czz0?zBA|>vkK0opL^IhXeOApV485M|IjPNb}2X-cXDJ>nM6eHNCEr443NE z4}v{s*Nh2sb%G;fkXVZc+W2z8MSP<&M9(Ht8K z;cagCgUG@4Dx zmRM)RAQ|>t76otZONhOsOIc^1^bqpI>z{MU-#j;7vqZrOwf^KC=^5Zh=6^*Hm`8oc zvL1APUE(6t4(z|AY0>Mt!d_uyjmP44GMd@<1ueJl=wjNge7T-7AXsr@i%@`rbu7F* z;ceIkUJgjODrkOPj%;xAzFGY6d_ybW)L?UbDrDb95zgv`_47FA0i^YYiGb@5{@r;E zp&Mrz;7QB*Wu>X4U0-M{gt7ub4K>p|FUD&*0{qYp`4 zEiX!>C&ElEzR~@jbn&Ug?(>duV8?#biQR#Nz*4felA}ovo779PUBal_7*e-rD8lsX zz_y2~j&}#IC0Q{UXu<8a!?A|WQC^6TmIJYywY)~yc!73UrAg9mErAc@<#Q`qe)3dajRYu%WVQ?cDVNU1rxe%%!{y$*P*y!ix*sDU2l5$3_i!%@TYM2FTZw z>&G5T=n>j)nxgm?&{LYjoRW=QUYdZ9x4tdF%H{_-HWS)%mC~WxzZlyJ^j1hVw$H)| z%pL`1mi)pGtp)v_61r!A-0_3_kz`%SF$9Q8R{0AM3n^S7@SXDgu+$5-+wHzzOD?(% zpEiU4EEy%3BmLz*S_;TOVvKwh2%+p`TI%=vr5o5%J1vpxki(75BTaeGSj7z;YWdK5 zU7Nl1Dr)rAN3+kbM>?;(_>`)lduujZy+`9P-e&@llQ9?6{!9N8A9D>=sVwl|7dhWI7U@8okt z4Vn=43f!sP5Z94V9H?OjHjAJqHbHGcB%H5HRFcDK%NOmnN5>9X8l&WAYY^5M{Z6n! zyb@invD?U~;>mSr7o5R?WC^>;vbUn{jznE%PXnm2_$&*2d-WpmXCI%rs5ylUCS&N{ z2e)XGPlutKq|T9keC0&0xdlc0-F56agdgRw;!OZS+t^6Y=iMr%v$0=EK`k!te3*A$A zdqVxo4f_C9+pOPOhG_d7Gt?u@%d1&>81*7iI7T5ORD&G$3X;Q0)pHT6!>(JzF3n22 zL5>4g!WRoDn2Tpnjzwt&KgAs6uJ~Ab=;jfDTQ>g+gc-SU6I5G?c)Jz7oIRS>Mr5a-n6ca$w9`cD60V(wU4B=!=-p`+XB)bj0k|6P~`^NG0B<{FYoTxps@rEQ5jt3%`q?=Nai7Sb9u##6 zh0hT0Mh)YoFD7<4S7}rQ89867mVBkVgk{_k0?jGQWt^s3wV3#R`~PuGefBmMO*>(c zxtN~ke6Y<}Zc3Sc`nsq=t;4XcPfZ;5i@qKqGocUF8NHuaJp?p0BNL*Axe}1(u;!eK z+$Ax(uA>{fO>8SZv}HQFo?iQ-_aq4?|IJUf8!s|}HE~^s&oI2eoPlw-C5Z4 zKm}Wyk1YK&+r6$ zw7%ck_Pp*=pMUoOu!oADE52d%$r^uo2x?(lhanO42-8Qti-`I$Jur{PMpAR6YfmMDu;uDnOF!}f z&tZrbkHYo+FXF1yo(6mNJzrVwr)Q}X>74!DuPYXN@vN8DQQ z^Hr7BQOTg^E55uTO92D)t~~Lg;t2445FgFVnHQ($oQ>@?Iq^rWO;VH>?Ji-d&+vvE zg1Ld%$FnkQ8YNc;DnAO|M;y2^JJSVLQZ=?#S~&mu?nWXVj=*E$Nr05y(K2__ros4| zAXjIRU(<<-`jBD$?);h$g+){|@zWP=6L|ESRS7y9+xMgwt*x9h2c_LSmytzfhQ|EH z)^;b)C#1s+f};DbD;MT14`HOko2T%+87KHTlU_xhHySy|B*P%Rwyc}u_KoHC)#moj z=B&T#kFcA^_7?UQcK^YrHm{W+MszFIW48SWq!!H+W4yTWU0JutKzwo=_4X8zUICo- z8pNseYuaxw4|@>^+{+aC?JSbLaMpz9QHIhPWTSp^zWR`m+J&3#KPag*{|ZQ{&uv~x z=%X(gCqvb1Oz~xccWnaEFVk%-W8LaU59b0ldnZE|?(Gh_UYrNOfLVsOJ|x-r9snl2UriS64R_CY@xDX*spvTs#NVGP zolG)vJ^d#pbzB^iJra+qctA+xF1J={o%(g*QTj<{kL+DUX6hCxwlHz%@LPE@Hb|=K zgtaILUqH#ztUQYK+U#JfrDkzLI7|dDU&^>>{5kq&zA;Xcf_%w!#yC{Lk$O zm%xoXl|FZQRke|g-bY}?a}`GNZtSQ!;BV12g+nvS)3b6$-FoV*R~Z4s-OL7CzkG5U^wvvO_=cnx2+N8#@7}z|pwI7nCUapVrg=O|6TZ z((J0%Q`If`U!u}lgNxFXETe%rc8RVBL}}jI?Y{eXvQ^>g{9VRu(ePl)%wQtXYfqXjX~-CI z9qAFYq9$>hraU_yyMR#?@N$=a>xsOaojxqc$om+BbC)q25Jq4cOIp zrc0V~p>_A`a$tenKsz8>wvoSw-QaKW*}Q;(E_ioIz*_uBt%LntR$5a8X8fr%gX;qy zzCG&eYB&m42~99N6Ap1L<_Ts-X8r8O5yIzF1JfhoC9FK3!lqYbl`b0_P@~N)(XF5X zbH-zR3}W;58(k)Agu!Sy_%kyoNO&6%g$*+4u`eqT4u@YQk8HlUY|O64AKKVA;0O#SXQEQ1wbrPp zx_Hd^OXTV*qCazJ{jsU5?6qjF^ga;)_1ABGn-Y`Mr8}0ZnB#n~({d3zI7}SMR4ck! ze4E*(<$O>6XfIj39WysQ!QzsWC4^C7!}Q}3`%=c5-6lZ9+cgm0VKU4YX#{Wfq|R#Y zVsgeZq*r99*h}A?{g=JyulQ`#F!nXN3Hu~iL^iryKCvy4$owJi@9k#?JdX|Ozuw6+>cD59J8e=sR^ci$LW@4$;h4&O6 zVK{rUF!&~8(fCKAsc9d=pr?_+4%L3Vzz`!?+%<~Z5i{~4JoWdO zVnam37!-0EXYJ9duSm@;LN;1NV3pyp`EZP>@m0rH<^g=1uJ87r!&s4@8mGNuvyuh# zEU|Mx)mW4|>yvN5!b(GMqVTf?h;ih*E(EjCfycRdCjDa-px>y5D}e_wJss7qa7iu8 z^K=H|Tc07j62Bv;1rYtatNEjS)>NW)c_l}fY8$WEL(oLe%qaRUfW`iiw8qA3sg9`N z0n@RqV}1NT&Ofz+5o=j#@Is*TFAhCmm^<0rg5V9~fRnN%?dk+7% z@}K%F8<*Po`l%0Xdx+?@n%Nsqu7%OMbNUIQUn~VDOA12CgGVCO@$X-0L6%LE+Y#4M z5!8>QWmJCGREU(;?V@#!`}fyOGF^j;x7E?bTCSt z)Hd?#lIg2byP4)aZYO&iL6X+YsJ(PJEoXPv8>+OK%N_tU!XS0(oop7RCM{3*L<4ft zCjf@Q-_)CfvA#T>E6(|c0|z6M_%9oa;DUPOB=B5}8_P$(^%TX*h70edT8is(Xf;$D zWY@7**;d-fErViDT87ksLbrSUns|)B(Zd)g>gI2Vc@tY^;j-#j^6q()*D?nr!pf3M zUvRmnz;tnz%8z7;=1SlP4qs4nJ_HG)#NHidzLc;!VMV%Bya2HzU20zuY_1^axBlLY zMrZwU{U5)Lc?3x_l$zYL*0K%vDwUv0rz4`8D~P~izu=1&v)Z zENNY24U5kKqpJhP)MWupMvLaH^Y4sD!LG3W!N8$MVE}HmO}3ldgT8Q9X?vYBjp3*6 zdM?f5U*qa_=nt1nH2=sfiYgTD3R9RgaYv76c%W*kR`rE zt!@gIlnR0v3mv*Lrrdsum;y_6s$1U5?{;-%!58W09KEY9mP3zeS%tQSr<-(7JTkwYZ<0O1Z zx6lM9j;~dxk=JtWjU^;zYTB#eqFeVxh0*skswsR1Ek>Lq=nl^u$Pu^3P|B)voNRYU zNbYlro~ShHRYsM#}pmIx{D^W$xP4uQpKB;e23jMTKN!N>~PHPs8x-)B>L_s zJtnA=1>2a|L-nPnGzSlMAq>rvq|N`hfvfsgD1R_@fz3~;RF_oYIO5|l*M>;$7(;V! z>@iX!s2@ z`Er&RG#9awtRICI^Xvhq0twvw>GNSX->0sa6m;V(5o*4-8`pGx4V-XR3rY(csm;+m z-AHwG7~~jCQzZpUs|T8SBXH942AhdqOxTMEvPdT6rdD^L7}U6*Q6-YwM6a}KZY0<9 z-zLjEKE%Evqd)sJ{=glkk5zy{J-SmOM?!m+PI;S0?E?z&jMk-#ZBMkz?_mjBF(y-M zX*fTfvSUOIJ)bOyous_2K7Y>sSQ$YepZOOOKD4O&T=o8zi0XEe#&(;4<*Z8bQZDWm zqVyb3^K8)E-7kpae;S7DQ`%D@z(M^y!;B=XvN0xhN+-Sa*Eh4LLF{B#=5g)g%OrIh zcNbD?*kgr&R4D8$r06ev&UQ5LegVO{HlxGlNnFoE0XC1j@$kdzLJ?i*wALi+y>S&%a+_Xua(n~#+8s*X|@tqh2*;kiJp4DlF>ZiFUfScXS*Y7?UyfqR$>L@B8a=W?LYS0dO>Tb zL3zdZ{bkDa%9M^LU9Xp&h;gPtRZ1DOL4J-cEHR3#%A2{*=hH>D%K*p~76+;%v(47oR^^*8p?b_;T#y%DA7dFTZcN4q|V zNqD+#M!V#?{-!GNyp5AyUzunu;U-%AL?P)GtfW(aQLm(fG<&TF+Fj1O8L4wtwu!~O z0^QNoU&V>tO}nfRZ@WTUvaow=>p2b<>&|FK>dy?n3=M@@R%zCxor8n*s;PZFsFMy( zESQtL$>UlwG?m2y{sg;Cm5W%2@`2=u&r>h$Y$5W#+3VXipZMd-70a&>!l&`YH@3qI zl3G%waBC{O%XoRD1X+?n6YPtKy_)*j9|mQluQN;|#?j**Aw06`ZMqQt#heeDJTr(> z*9b2}w}oS`xLR~**72t1iwo5@cY95-Bnw7ATv(QH^ldDx3(Ot=et?s)vAf-!T?}k`c9F(bFVR(IX@AoyEM1^gdqYF)>V`Bd-OF2QLt-@q@Ya{mo{DGN z1lafkTbQ=HZ5(WHv!BNH>H#H8`^i^%Lp>`i4mLejL}UBd^nF7eGA6UM^?-`at$VArB$0~R_EDM3(uhZHMR@M`w#sVaT!qW>4vg(KWEa^3 z&YHIxzl~Q7z@cef&&uc!R@>Mi&Y*QrF|LY*jq`|Z6uOwnEG=QxQrn(8*7Shfge5ls z-I1nWB+|-YragSgOjggj*lryhqYP89bbZvNJlj@!vH|GJ{>-6pz0yE@Y3XN|D(w^eVW?*sz~kkT%wK$Vfz>i&sJT-Mo* z8K4+%^^KV})e$1!_Kzpvc4;o(h!&nZnA(Q=i+(KZOr`mCJigk4x^Oze$`)J6wJ-UJ zyzdf?1H&o?jqTB34UsIM`l#2o0$dB)UD{z2VD2h(?PxE8B$a zdf&I%NG%#79P1-I(ukFt_?z@RH{Y;yO^XJ@+aHW(dcOgUl!9CVe1h1w)AtQ#waG0! z)eDjv>L5Ns)+(Kvbb^nkJ69?Ps~Za=n(i2wZh5=pVd?m46}}8Fo##GIJ!D5o<&Pl) zp4Qwf@i2Fk`o-#VV%n3Dh@zPXT%`sfu@&uSQ5xGjG8zXQ23;(}J;~pmDi?V`O?3P% z7)#K~JAKZ&!B}rc1Eqy4UPE?is!KJDsFjZTR3RC#Xss|JK_JIW{p?s7OEOw`;0-e>+kxJcHiA8ikX!C> zza_$2g_+JE>M_Dp*>BKgS1C?L$W=$|&cwrROy|AqD7~AY?QcS#&Vb|E?6B%+4;EZL zxH4rOBr@dI(-v5G2eHGD7xHa#e-*d4H-Nb2JdH8Cg{nRLSX99B5WO3pA5? z7}~c01y=pnks8pu+<(1SmF3m9DUaV`*vbHG_t0(A#0o;9PgVe#1xFer6(gsgwE9REbOBQCEX9XlqRjv_26UGv zq_s2;G{t|YO9G;5B+(=}ibvg$Ggvyi7M~vH-gn0+2D-AuCG6e@6mBHn#-1GUKV}%)p!`W?Cn}QFmHHdL4x=R{C(Zv6_^BZ&{)VT%@#j0inPg7H1!vLOQHl1 z;y&TsSM{@rwPCCTV9kbLd1fY8HdUIKV>26R6}?>AeY()RaFg_MM@%Hzg^%jv_jz;G zYJZ@}TIqsQ6CB4fo;rZ2!ixXtC7Q*byZN`>SKNCwTZfUpjo;J&a8)Iw0z9Z4Xo)uq z9OgNHZ+wj+UPD8u_YHRgPff_!FYljdi&IqrQgB9s|085dQ>WH+$&|m*16uf&OFP0E z3cz}+@fJuy#kv_r#cBoKGi^qt;e=<8nB_XF$bfqj34unD%{E19V>5^%|Iz(F6&hnR zUWjQGBeDMdg!L8HsICx!m>4RZ!d12a_z^ddsGWCBtW2iAMmbrxTVb z7xdlJ74!jY>2IR~3X=!(CcUpX(cCZhSC_T3zOB2AY^K-O1jHQwH|u;vHo}@4Ps8ei z>pU}498fo$1;iKM8D2oOp&bj3XiS2em32e^Bphd{29u%i?hxrj?8ZR6sqHIsfEW@1|w4qA9qzI3DG-Z32jIBMs2{pdI}` z5jsA_D$hzyw>1LcPMWKzz|7bI@3r}|%V(=Z!qt+yB+7X+730+}mfX)g@CRjipsnLM zMFb|dSG1gt)q2VZpor{x+=bupeVO?!^>4M90RL>S`-h6H{b$n3hL%S}S^lk0zz`ru zrcY2g-CDyXw!I^@KlJg0iP!&lPBkf2NHvMrufN38puG!!A(^h_3aS22%YX(>6x*7l zpo2|HwBIbF8IbyPms^?v?6i8-9XV=NjFo_a{}Yub=*ngUq3l0q0h?;J01mCI*kk-Z z!I0FGl|m{SE&kU92wdlVVE=qz$k`YcL=W1^ZOs9QZ$*Qv2b4RpqKQzEG$UdC8{U`m zx_aM&=u=jDX|@{e96l+)DG82{9zq3sj*{?sU;w}5 ze;8oeWL{JNl%$jYzpm7VdbI=CGK{eO`| zpYcC?Kd6(SI$}|iTpZB2+oreBR&?}TWKhlpg0OaJHUeI@Wj?(f6X12SDOJj{c1e-{ zR8Y{ya=|cN>+L9_6IY{Jh7QN2-NjGqQvq0)v=tWZ0*|NjJ|EiAY{b7Ha1{mECl}E_ zS3S7{|5N_O2bn6l37ZeDa`$Gqb@Z0t`#gR?7==qIADIBlP6xntTEUB4L=TLrsYYi) zlyHH7bejR}D-7{}v9Ayk973)~0b28afKx78_braJHBH|Fkis7Uce~kfp9UmXTMav3 zxfxyog2Mp@=l=vM0@tbMUsBL{HCxDc@dHn@6J`J)Y-TBe5Fif-WWfE${C_^eNkktZ zu}_+Q!i3;Ef5pA>ovR=(T+?jf9{@z6XLo7yri^6ysm3U zO!vD06E?>CLGD4Zk-j#~*(Rf4#60X^#3{9)B}+Hz+3;)CK2zp zRfziSA^gz?;|7Uq-*%wk@~h3t--xP!DX`U90}Y9VoB!EGb*;v~0?)&LcWU*W>lzxG zze#a@*!+fl4GaZhf08HySrpC10B9!jumRAsqp||TOHW`R0sheiBu$~i}~`k_@m8Gf~VCjpb`%Ki&?4vgx3#3Vj}Hz{Q;7^)-B;KFh7G9#C~x zz#%J`pKP9*S_?g(f+dSLfSc~ucrCAJQ){z>lbvcUxM%PgRJ^0Fy#Hm77)a=_9T2kf z5d#gEEGcutSMkGyH6(!$Yw@)6n7nUM@f){dRVO66I9nzWMZF+=rfNb77||utYqckm zE$L;~&Bw((!i{Xu#{j1L#PUZ1Z;<=bC;A%>ywCj7Kv=wr>cuM$@Rh`F9*VfZB>2Iq58A1)h0@t>^5z!L~ z1SKg8C>{^iS?!hhP7hEV_^)^l6s^o+ZNh?+Yjx~VGtDUzXRvF_^0;E9t^M+5@c+0E zPSC3ivnv(eCJn*>IaF!X`RMy91I{=yEt9VA(Jtd{^$nm`DQ{kDsraJys-$AQ$`^!z zEFECH5t@`7Pd(D7aVc<6#YwnR0kylutf#hGuD6L%Z&Gx*%((SfU5dHZY+u; zL!W3(yN-@*V{%)d^I8S8jRFQT@KwFPxICYJ{?S)n)ZgGfE1_FRLGspcx2rr^rv7GL zv%k7bW2+MDkqh2d(0aVUeew0wAk)!sSgz{12?4)BC+qYxKQI)vLHQn6E&tO%7V#Za z3G4Gu(4QiZpACWRhYV;B&F3#^+^L0`dp{=Xz;u)OlhMLymhs;fKVwR%q;cZ>ox1!4 zLz9l@tP@3%PYH~9_StRm99#BW^>$qqrNtJoJZ=+o9h(>Qygr<-^}JaT6kQVy;2wOt zGfk27+lUpaItgZ~fQCtzfw&K;4TpLT=@4j;oYw^Xr3JjJFKs(jjW$)vG{|EbDL;)@|1LcM@(uVi8__?;S| z=jUwie#mn?&ynX2i9muKcClaM zu+2!mwBmA<-QwFFchz*=Kn=~K-?}T|@-FTb&`*i#i=`#g+(&<`(hJIM;L2Gn>*a?R zwku97lN-+KhP2)3@sjXogO`{U*iPT}=Gs&pM4LOYwpS@?wRG92dR%8{Serj|*C}l_ z&-lI%VzqP`VFn#*C67zgOH47}KVp9RCXriXnj}VarI=6&w&H(Vr$iP#aWHA> zIbb=h?o$_A;RP~TJSha*Y+FTCgepKfcJr}Dz(=n|V?mH9`(@dU*!*MB3-CE|>zbc6#v>e{9gvf|~NdCM259 zXJ;REkCLQi3(V7lRc{8MXru~TJlH{_Ly5uF1@%1K3G$1RHWDG->_wpN&5k#e{$*{40LZ?q>8;pZuZiJl|7T zVLYw6%U;r)qTRKOo}^DpsuC!8vdJieGAPE5>x?qsG4c%HULwJ8S@$J&UGT5(d^I7tB~&dLkYj*Np@Q_YUHC5spMQZ!mg3FY z3UwvZ?TP3Dd^XnBG+sHS`TCp{$LKWZ$JG_l9;Ybq%Li~whnuK8ljmzKrjH+;!8{c1FRCU1A{ zXX6lqvoq8}?LdQxw> z^3Z#*;er?>yty*$ar}gzHg4^}IDocZvq?22N2%rSYIuQ*ANOmmM@Ad7NxFUZC?OK4 z;j3DtX!*!em7-`l0K?Z7m1PZrq41HON5x}6^o54=iS{iSDL@R+#}{GdKU zVhgjYSKu@&eSm6tWqB;|q@)_4!|5@p45l7g!iZcK4FbcR335Dieg?}<+n2zgtdqN4 zXvy?CAz|tL0}h{(^x_+rzmw%MmGn#C%JMa&SMeHrbDd!5omfP0Oll7=C>^qpK5%K$ z~ni$35Ok zS{4gVEVbXZb7|t^uv7l3yPY70S5Pv!-s|kmtm<@}d+?Zh-szBg&ZN>9IQuhZ46mzg zLw=z5bTbk&I%;l^J^`8d4psJ4yoVHTjCj_AGS}E+=P&ryKt1X`I9!s*!Vtc;ae??R z_LsB1hcD`dr?2uPe+-)mF@prY9>F+?zIr*bBPHXtBeDr$qYzQlhUOcMxAmsqv!IE*N~)06kmh!ZaE3H}p~XyiaAFu_+oBwzi^PsU52I zG_Vy?5n|M_$ZUShW-fotf=Xn1N{K{u+#@lY>Nm0Klgtt}|BtF`4(_Chw&6w_+qUg& zY}>YN+qRu-Y-5xBV%xTDy?piR{qd@%Zq3}e-93G#r)#FW=NtjBTaR3rj5X#-tO)1p z$P-NjZq~r9q(IxaxfX(AJ!%~ZbAQ$CuSK|cG-Nix2H7`UjGccXxK;;yTH!f{&>q?K@ zkd<|!@Jr7c&|Ba-L*0;-S2(~@3rkC_V3iwT;1V(08Gi?Ym~Oi0u*#{e@P#b|kz1zd zs3ul{o0vuNp$FnZ>`DkC08Z4xoX!d(iXfBWtfe%;)C!DNB$~FuBKQp)Da++iNCP(l zT%7RG!3$X56=TvA+prsPAtx}iki}4wSRti)7fNHGF@Pp!MpIi8ue08up(0eG<~NZJ zGhK<%ur`iB8KJ8hSORrWdBrcpd6X=R(iLSRSA5!lnMXL|&_Gy#Y(cs*JUY_=Ahwgc zzZj$gAtvOgzo{K@A!H>N(h%LPz(WCx@u!*}*UkjzU((F;{EL`T3_nOw(g&CSgPy(6 z3?m0Hv0gfp$H>biixL|;C&vp+gsf!3$PD~N1YGIa=RZLb#jO*EKUWhc7>#M&7fYAx zKyOB1SeYRBGYMCB&;^=zR4dId#H*e{W>6LyIm#rvf*Kx+Ai(a*APVEL3nQ%m`%Osr zRC2fD{n%F(>xCNc9zsmOP4}J58Z%t*MG+I|8wLt1h7i@m639mAY66xMo$kWv3Q6@h z^|*qX+Kfs<#K=uWI&xDv%2MCeftCPTg%L`D@i!3!w8BiP=!quzh>8|Evy3MLYAe4qjrGR z3j{dh@WR=!;9F3Jp>W)xKdtZkAj*vh^1!{`LUX@Jgu_F95D7+x_>GaNc=8h%+}pdU zmXhr1WlRq6_Jp4|AW-t^5@vOWR{}=JSgoUqk+>kznn|_%GpkkdO)K~sp!I$g>k*D6 zJVfw632GH&&+!oPQ;Ub^V_T73|E_oH5P^Z?hd zM84bTx4qtoemhYwe|o~{--y0u&~Huj0N?i_9|`n(l|A9LKbdWy*IN{nm2mW--=gRN z=6w*4--vQ|qd0yNL(IK8R_i#AF(b z=|#5<)`Dp%s(Jt^A4Kj3#4LHX+A&>)vOfhTfH7ASj4|;X*y( z#6M-KWVy3s&Di|y^g$eMK&)(Rpw5~xF>zxvd_)>*gxW+RYecL}v(Nj1eDCu=_$Qyf zJfSY5-xm7AQ}U^)el-enoA8O8{Al%hYIymv6=?MX>j5Bq5aHj5e1A|)um+GVgsPbg zpUhedszLW&MZFm40k%g(ttD@)8C(Wr-=}6{;uf{~ua~4=9Q*{;y7J1?Zr~e!O8)Pr z#M2k%;N{H2{fs}}#`z%r$%$D>p21av&ik8oBX>sn;p8W1lw)aYhF%7+3b*9mYcRr z--GJ`hJX0`o<+R-(QhU60JSefd?`Pr#aCA9d@IxMs{IE>Pil;MPIK9RySbyHRl5DX zKdq1y=T^jf34L~|cjA=Mwa^5vFh?Onu!=6^*xQ5eEb8UDCw%)>nA8w^(QDYiySdRP}_p6UazY z&Z<^2nA(HstX!$2BWFaKoOFLuAEf@&KZ-O&y}Q9RQ+{by82 zep=w@6x66d*8{()n4^>SWt6)Sn_&a+CX#JsTD%wS;}1*wm?~Am^OzQIJ$UCY!A*Bb zY9z3*pI@*IX@eb9@hd~(X+mARyU_ZNFm}_deiq8FSkqbV^z?jA#U(Ir9DJ=9M(Dq- z$2sZtLySh2*zt}DU)|ECw&8ZD-@O9%nJF5d(mKz-0Y-V=kq#(!)fed|_@vQJcs;Vb zN`DmEVXN~#e(Qm=I`p=PJxWm@Vp5i9ze|WwLV2bPu@m3%RkWh%RJgkQEKTWlAE1RX zeR31otc3w^=Dkv(JHAAH6Pdp3GN0Mr4VdK(bccq9=xyZaV5NTfN{*EmxR|I;Za=V> zAMLt&2M@BBe-+UAlwV>iJ5aLI%;zq17%mGmHIMI21mt47=6# zA{llay(OEhW*WQmPLB0Xp5lPk+l#uNgU}rTwOS@;WXKL%7}Zn}RZMkqWGbG5{+i7w z1ew%tQs2uiQ}38@S%Wg=x&)W7=D3`H{$Z&P>L~e;@$h}7eULLPn8#B?UbZNEE6I6k zRFw4Sv`T~g3BH}flJ)xfc`?^G?3ZP9%62`o9k6hV%SxZbN--N7P{qBRs~zzfAuFLWo%?mj!og|0Z>2NG zlM?*zc@O^+)Va@Sy)fW=D}r4+Psl&q1&@PsM9Z}#>Z7&Mqm3f+a}dA*vgpZCsE8ck zcX|R_L2rva`FBg|0yR2x^Y=NglI?9qBi0&;=H3YHa}WvC?N{^j*PE;0G4g9HIY~@1 z+}fa$H!Jlg%%mPQbVUzG9JzrJsNW_hv`v=;C0jQ=bYPcPx@7kzK_W^U?;xA&d+x2w!&Ovc6%5%@L}eW&o}n> z=F65%4Jm4k+68<(d6P@9m;UAUpSiIXp+J8JCQSjQCEY=$c1Dn zjHXhW1WJiXJZ&W~cn%_2@$s4znJ-uu1s{fO)cuXi2b|UuH@cJ<9C5ZT1g^Bl3@R=K z;@(t5=O33PN4x@(DXG^Z#XtsIGh3t?ukGDH-l^zUb8h&AUoO66dH(8=b0gV`v_Zw5 z<{aX}j5~Ba4ZduL3Dt`^l(TM@uGd)wOuxXqIKGjB9ADbzcP`>>#8oP}a&N$NxZNjw ztJ8s2T2k<}!xGWBa#FcTM>W}?+NmeB$n3*X&$aj{(>OjiwU~HfOQ@T(FHl%c8flfw zq9{9Y>QGo+)>ACF)-{b^1c%_=XKEItSZZ>tF_lzC(JFC;(BmBPx~>gQ=RPr2MS4@^ z?jKmtJ9WKPSDz|40?+Kdzebh>`NSF!tDh1=!9P6t0d8GTl-_4vmfQima8K-epw8Hsg*Hy_nsKVmmNcL)nV0=FqV z1Mip}oWz^O>aP2UXXcNV;A#krZJOO*P(SI0k*<<%=%A((Zw8QjRn4cvGBYkHAzLopsB>DV`pGm(W z0dA7sxyhZHKN3i;Qa=(t+$0x5>DlzU@k|n(4rqcCB#1Prb6&uialfSb{TVpPKhUn; zRtoUaKiM=Kw;<$vAwm7OG>|XAn~*IgOlYSdupqqMnoyk}-NFKJ6=8|-;jp#Ex2Ve+ z3JsJ-|>xCUKK+B zcqQ*zL28xC{>s}yFc@E;gltCJ2P9yu!Zc z|5t(n6x$x;cw9T^JH~%ygW`esF8?gop|u+S3|U*lU^Dtpl(lO-_&?Jg3~}luk{PL0QH8P2RAVpZ8?;w zQy{mA#4JG-UNbswQq$mLtbhWMOJVlaiJ~YEv0Xz zp^t;qK~@maQ960fec+Kq6`Dug4M%pt?l2;YTcGYXz?Gr1_km>9j_z^Ap>=nEQN<@Z!W+;e;J5}4@-t{Hr+mXRH!ss9fq}Ky3h;Q&1`w`FD z=5z?0ZR9gAcY<=ivMRzoGRU!Vv5MpE;YS?uIp|8@GAE!{r<#``Dzrb z+yr_$x=%SS7{Y)ss>F@h7H(h|8FU)2SoJB4BGaL`SwK8z&WH?=oNgEIWQ?SyO{d6^ zhSn&(L>JWJ5+29|IVpjk3g8)Q0PeCOB}H2}>|y&=KoMeJJ5jou@3QY(OHy{UvNrk8CSe zgynZ__(xwWq&{>$@d&nl9v22%mb_Sxn5OUT} zi=uOAx0~@41@3AzvoA%V11gURpJptIFj`3n=Od(=Y`61nv9fHj4z18gd|oXuc9ZT* zBt4W@tv6u&!%~V9Y99Z~K8zVFvs54*4~wJ*X8yIH!69{^&r%&FMhS=xAW|9;WnN)u z3Bn1l1+O%sH#OJ)c)F6QQEr-T_xqo2*w&zRgXtKznK|KeqtNVIna=E7B1I*Z4{^=h z9R3nx4s|!Kf4LrBHI){69S80;m`#YszOX(1Lgcvwx57W`xy&4l=Mz-S zZ#$K038}&=R&Rd+xy)R=Pk?GLi^`j^|2Q3sl(xanhqRb@jqJ@|;A{I0?Fa@Y`CY@C z?s)D^GdIHCF7HX!^i)c^mEz|@8i0-)<}tPUS7d3)AW~li^RnS7KKLOeluOAmbn?kF z@T}T7mW9`h2nVh5d!wtXjQCU2$M_D@KhZPEf=*%3I$$=EoKgiWfCDnwE7rlQgb{>Zl^_6imz z;;3D?Fyp%8o3!?Q%rg5>7n^HEl#LT{We|5cJyKg=E=p zA-br5KfLBktbs>-%`1pS6T+k>M$0L@1Ye44C94%k;v73p``d|<3Cyq<2Kkr<{+7vKJF?)zrc;_ z@N)HA)&ADIc4sZoML%azJCDpPXawQIG5sYR=u;r`rHYWpgyWpt0@g`mwFs!a% z>%3W!PdjxMr9hIKXOgndQf^sOA4YDL?B0v#eB4}; zML|x2I`8cWox8w}vw_%6drCKi>30I|b`QuFEA5DM&y$*$!0Km`P{pbThGm>ym%jmBa<7bX!0AHTK?0qpEDVZ-6}vYL$`fkmu6#> zpx8g#(;Oa9lwiBHk6_PbW0lw&q>iT=jGZcsIf(C48KpC^Gn?clAx&RSP=v6?9JBqA zEZB^m&(6tkv`q#n&@Az>q-XgX?yLh%L~@SG6*!CHi9e1mcZ!dwqTBctoA3oo~;iJXj_<;_6fyyn*1 zr|l?eC+Iv^bhV*0bS>} zb%2WO4()!T`tYK(i@=ofva<)6#$YU#dSUohLTtu^FzaGOXk=gON?+EBpof8!G2t-} zWdVXl&blz4uN=HPpEh6}Xb@20&Ua|JgBO{pq#-MPKQ~8BUoN&ed49PA=W?8yQU4UY zEs>tDn4$HKx!cRWYP$8^IXO3%I{J6w6&ZB<80Pf31oH#3yoK%m zA$*y(X^AX=GA!35Kq@>4b9+uiYW3G#s`1sF8m0I$Bwv4KF9xaxOrkKIo8FrY z{~rwgzs`;lpRmMA$iD52$)S!V%VPNul8cKBr>TkTjMwS!iJo3YQV72warvyRn5Sl@ zN0o7Ny~k8Hs`%}}XJY*NDhaiv!IT!|!xENwO{TaON|!Ggmiq=OIM?Nq#ZD^HQ~8R; zzFum2K&shC9zkn;ds9x?QlIAFdC5isSO*(z)`_Kgl<4z9ba|1L9rXh-!4v42yMX?qM*T45K{_GF{=Z{Av9>qcc)x z&f@W#J5pIWLO%VtuiC#X(65Jh%ASW4N;u}Do0Ry- ze3`gX!+CHU$}`fLbT&LsZQASK=Jj2TznJUsb~<>1x3IY?9nLlpKWOMpH~2Ao0b36> zhkuPd_+#eMP{&itI9j^ylZmC@RK`2?rT@fY3nOF*=|_Wl<4Kx(=K{KWSOD8twg7b1Z)AN4wLf~ueIg*UALZ<#pFHLalEw&8kNqP& zX7Q){^Ypd(m5OmZ}^p)#X1ecNv#i+ppLKilhQ#d#f} z9Xu{;fQ=HK;Oe=f+sjlV4lUh`Z*UfbApOq&Gm))R(t$2tEzl} zvYFX>Rkm)sbKJoD`(~{L+`;w7LuK>OvFr$a{WI+Ue{$uohMUePfPi+p|F?S-7El&Y z5*HCs){~GGmAlN*iq=`y7@jV6wQ!=0ZwU~j?9AN+STIewU%4hNJw@9^;L4dbiavX98fXT zfn%(Jb3pPLsmmTx=Y%CuD?b7jtVGpg+s$F^3^<90C3wH?M$FoK(F8|Exl1eX0VMl#Rjdch=^BKLyPNEgb8bI>Kc| z3#MN_diX=X_8an}3(pL3vJQBLIZ#4y?pyCK1 z-+qsoFghU^JdCt04sscB_SZ&VR?&})rZbYG1p`-zL?&52My|yE1sY~o#Hd+S$+-6ivQU4<*?(CVy zrq0|q^4qir2R+fLO7sup?LcIqMvEg;f-Yi8SfagB0zUbosbe&w84v zp`Hj|p03!db*XLaY<@oWB7|4aDE18fO|BzGLCMHo@QxnB11Q&@!>@Yo{fcIakD~`2 z@x!-ZJMN-Il+S zNrIthPO#}|t_+cJ;!M)lV#0zKAWTg{ScXqHP+4g$ISXdGZgsx~N`80CVK7wWq#m{t z7-%hhH^$s^+0x1>Ve97lcjIN9i?yUKE3|0NlczN*jH0xpA|4wv9x)UWIJ_Vn30%!E z;-T{W@&!r7$}?10=A^b(NgQAGAU7%_HE{1_qiRWQ62jJ@hL=ew2GTAW$KX!Eecp%?bS=zqYhZN z#gGMdFXiOcA#~Te53-tOmf*lS)$ERA0_JI__i;`w0&I6p!}*~tD+F~MHP||Zr0G(X zA1d6&t0ezGwmesz&Q85@jXTdHHr}`(&E9dH4e#qHu??F5VAULYMJvU8BUb zBz38auYkng*4|H-lEp zKl_;^-q#?Rs4BrfU#^2FHnOD4d~abyoH}T{U>W zx$CJXpH39@wr=s3C7Pq4@&#w$U@|rOn$$4fiN+)@7OP|5#F_81pN_G>|5^|_iBIAx zOp9T&PQGFt)&@kY55!U4K1=xQj3^Q#2B-EMPJI6@=eGW}lxEJt_nq_Sb?*CPFpW>K z1#T+th)3MmEG+p*!1Gft6Zfc2r>N#cs?(7Q^lsgGl>O|g15J~~***=`gXX)0d794X zjS%t5ulG*R&+Fx&iJ&Y43(3>=eLL{n;wj%H-;Pe!MfKZ;lkY4N>uGop?%nR?t#CN* z?^9JV&?|3&9Z~OG`ms$VPhn89;f%P^G`H*W_@&z# zywAPyypm`u&PhC#f%?AYTf~q@qrXp8@rrp9G?w5*DA6K5WEwwg}8sC>k9GmSM}wg}DVxOpBp=zU-(&Gd`%d3pDZ zv(fW0q!x}va;_0Y$(^@d&SF?J_%2Qpqcvx8?2eOdSER%34ht-~%~5a-PxRtV5#4jp zJKyQ-w!9@qRIc%tAwe>S7u6Vb7f?0KRSudM=zlmjv{%cCBdcZ=G)T_OtzzLoagL6f zv>ERD(WDa1w&*LEb`{tB3{Kk{_iR&1;=*0bwmMAmFe9GI@fH8NtGS?D>51qsf(rd> zip)l~LG}nqa`i~_%}rd;MwoSDyPE&Lzw*n{H~m3SclOWmNWTwL)$s%Gs=M^mQ888^ zY=gcBddhi2-LUiW*VW3QpPui2413Sb`G?Kcp`VJ6@H4*ZzJyVw(i?cePkY^_(W2^kUH(u2hpCoB%16TN zw=|haH}d}HQu_OC8jZO$cu4$7oyD0vYxete9id9wa$26qXF zVOa9Ym;ZR8JhNAr&w51%6LsLMtS5DF=y8r+i%Ch$d=zGjEkfVBP)V>~E+__Shmf#8 z7=w~7o;XIVBB}`k28%xrz&Ng>PO%Sh_P$u^CibqD@Zo-tFkOgLz~(Kf2F)qUEIWT; zw&4alICn9Bwe+*cE!2`rEN9hkD-8N;lKK}78Q~C&U!a`zzqzUmlb_0>{Zy8|++TPi zj5swa(~XZ*sjw`E@;)%pv|yz?^SO0es^?~Hlya5kpo+UNpz$vJyh`8BslqN4)!28u zZasXdHU>IUNG_`P+@vYdnjks@DtATw778;gYf8BiOqD_mL5?MZVqdVymZ>Iph9fWXFV+kT_EL8R@Ml*I*xHB%_EpI$eFsSILC-qo z%(BYf8lwj>mMn)ZV>aU{LpBB{j6-GBns>x&5LIP4ejSx9-6Woyitm<>7E<>pSC0@o z;=nNp^8|1*X3Uq0XYvQa{B;5l{fQ7&fOXoccGQW6aFmQJiF3NDoxDm)vbgr6y)Mr( zFu-+mk%sFd(eiRhR0*>m~ad;w?*CS_z6?_z1m`iD31azipUO5Ht1&*S^5*Zq< zUmvRJl%XyQL6L}Rc`><~I*)c>A`9N~D@<(7G}jZetl+#Nf;zk>V|ioYDd!pq_`z!^ zYap?GcsXchwiC|1k1Z&616XnHZ=3iW#64-Ei=+&0V~Qm5ZaodUd*h;uGCHa=}4 zXg!7ixk_YpE!IBH)hgmrK0IY|X>S}g2xg*V0WllYfohz{ERi!V^QZikg+h&uLb4(0 zh#4|owpx=akFAIfD4ulnVIY4n7uotAO=GCSpu_T%fAOlZXyI;C$J64hD_Fl8B8#C7z?6g|KSCADpMf ze>)kS2J#^vb^*wd`8QkA@CFG?`k-_d|A2w&>x9K;5DfD(`Q4NpMP*d1h`Y`BEp!Yd z8LZ|ciYS<+!0~+`e|NzFLQ$2miZ?iF-%Uem=Lfy`YrbvBs876L8c$_~>y3ZSAIbyd z-9T4tr|uLPAc&Zo!7;%e@k}3$=cp||m7i75S#H1;d>&r%=9%elkKqrRQ-3`t;S1n> zk{i%m31(O9XPeW+SL;X2LP`$%kR8SWSPuDeyTJ6B0t8VP*pbvC6W*s-du&Co{{R^^ zK64nc*0Ak2|NbrS3y|tD1b#Z%5nU8NAii`@&Ft(#N5QuY_E#jM5?TMK6akLHnFCr% zpJ>vpZK5Qa-Gd?OPn+k^u+NY+(8f2R?wUvsR9Db9f#mTQ{DbJ+fST#C1Z0?wHD}+< zi@Qq*T0`Cz8*2DC)MM`qSG*q%2kGDECHWLRI3WtQzdc0+D4y-xiwOCLxi`4Nn zQ@UygBSpwvl&8BS_VVv6SQuSP4YuK3?OqvI_q3SVs;$mgOnjJ>i8sm6;&fy!AGQ(< zdEQ?&-*1sT)Rt&>t_jDDj*Z4R33`wvaK_typf{er5Xzd@+80U8aruEt;#;GS)Si+ zMg1V?lB6sW({Pbm3;>}-g|VSH zs+KUb$i+NxOP)Ei*9~x?MDAnAwVHGz|ra|V=qHFj4zNhkJPNZnRI2#gomI~gyE?WJL1FA z`-w~g4HMHcBfd*(fb5h9=5k{9cMfF!KM%U&SZhIlO1u^gjCd2CS~TrQIFd^=VVg4XV~N3pA= z<%=b<&*00?`p#FEXC2eq`3vl;u{^Zpd74uv8~nKvYNvuqakQy>2Uc(C15O?H8n){e zE!|BKov_uHIxMV-mSEzoQOH`yy+PmP$HD5SvU5n}jr9K&1?Y ztMaBM(tTSQZ28lULzK3;XAsKt&CQPh^;{1-lL?UxI_$T!& zcCbeZWJ2b|{QWj=Ze<>gJ6Ek!o(1VaINm2J%0uwt`{XB96Su?o4 zVY49)^OCoB3qw6Pk%&-7{4#n68AnK!z{z( zsZwQi+dW)eHshO>v17L#`pT#5Ia8j|siLHMtH)CB&St3%V6>%!o}1%@p;TF17qo&O zk(W>TG6Su|kyxs23Mfe?sD&}EaF@KnlwczE>omv=NQ>t36*S)+W257y9O;iLSg?V-J#Sm!w}70q~lduvlyEx;Yx^ zc0gUE8rTq3E8xduT9SR-zPS61C9r%|JB>rc5gNA}Km6zU>1h`z7YUhOZzJ0BR`hr{6~g9A%-@o7I`|*w zz!N<{V{tHJbMzHbcm{T76xYoW4@lGkH=8@~QBJfC<7o|KXZ=>=*2)WJNk* zmKB-`rKz_v9vpdyFmP9spQ6)Z()SHr%kK+hHu_m8%KFGcmmE}}qElp%NxG`_Pbh*l zG=eZ<>#8%E+t!Z9PDI6SlVvRzyN!iJ5ypuf6Vk80L-8$c`+2Lo$#{rx5*9^{q4!yh z)>Bc0=qp%19Iq1mng+)`7Wh$A#X>Y(uvQzAs4NLd@AMJ9SrzLO^e+=Qa0WiK+x5~& zrx?&?loyR|tjdYL5Kag1Me)k}nFu-XYglh86UBqy%3^tzt@C~t`T6{4*uAHp7hl9| zzZZt%1h8t?2|Yk!%#LM439OBcVI7|Qjehs}$aadvAs_4~BZAvpTQ=v}GZ)~FvYdPm zD8(F+JZEuG=Swz@DjT3^;=f8-IG z(vVU3)w#b|o_;j(rErkpZS_Gp>eIBhKj@N7IzTB6T{y`)XFQY2t|>k*j&0GJ2C6h!y~-lDIN=F; z-?c-Vf;Hbx<3KCZ0Smb!?5@tYB3eC15CTu}T3IgJc8qZ}JxzLW%Afeb!>Y)f0-zG( z>r+Mo*1E9BU{9n#zr1(1eE?u($ijwJYGEqd;FgdscF)p*RqCK~u=Fv=yViG~5KZ>1 zp@&;^E+I^=Erohoz}DB;*tDfBiE1{p%}H4mRcm5jmNeI^R>wTfVO=@XZVqWRi)JrM zLP}l6XUUI=ovw=|`9e5481I;6uwmDxcBr!s9pRjq4{2gh!Ktz66zAxb;uYf)kq76bO$RFy9{ncs-msHJp^+eYl!Yc+K zeL`={;LO67YV1YX1-o((us0DBqK>V&)mr4}f$xE~dfz`TY}fOldz00H%8fc|x-=Da zYX{NVbn6sb(Nl_e^a{?Y|IFw6EsA}6>vE#);mu2yWh|g*oaep`e>qjgt-_}8M_*|p z+Xj^gn4q(d_zVm!82fjAn_!iSAn91nA4tfL45~!Ue4=qW>*f)ISu_E7XoElsVXTZp zGT(X!8AKWsE0qZ&;)o|g71#Cty9=gjb;O0_m_(@@8W?uofVjmH%kql8)KGWx4LaIi zn2>@2NIxIIMOOwX&6`{yyr`6xm1ZME$<8yE!mWRD=>@hkzW2WC`5ql;``iWHeiY%$ z4)NAR(yP{<&%($hA+Ye320FocwpKYQE%wAwxb{|3Od;nl^cI&g{i7Fw`v z&)9O(VfP0achC6Yw1N~`zIC}3i&y<##@JzUEJ}`k z$G3{UsCuz@RQ#2!HKpvlLfz`FZq+qFnAQ$Xw)&;s#DatAG%G|7UVs4y1&beK!sy%rZJtZfq`3BOtKWSln{vs?yAR+L=h`iL0nWRE_6} ztGehWs^a80K^4J7iYgXYc_N1OZ+)6SyMP#s(9%q?)1!73PTAdULAF`38VLkMSwB3A zpC6Bh>Z4)O7MpGkNw}UiuG0`)rQS4}g%Dx!OS3-?(L)YG1tx_+G@Uraqw*?vMR))I-_(u@1&WDcVEA1(J7cd6U58fY^LU>gz7@V^BmQBds|Dz zo>U*!Aw^ffoqpkjd>*OA?o0Ocf|p7+vMrK0!L@U+{5nh?0etQ2NvCjZkq&}Nr*yTA z#>d3I)Fhrz7d8Qk@NqaHnEAS4=Ec7fQnQ+LgKCY#$Uv6-P=r8<)D=;0CJ~XqTF*g= zFaNf)dHl{z>~N8nZR|R=S4r%c$WpfbN}1sRnJkS}ijdW6jSIKAxwnRP;)?gt1~-}i zGBvGL3GPZDTiiJAK{y@r_kaQFY9SF?9x@PuVBK6~S9SH6!FTF?lSwXA0p9s6=(nf( z9!TJ`D8B`@UtgXneEYS~TdXE#q!w^7V$X89Qs7SQkw zcel$SvVs|4emRW<>9Gz71-Wi$qXE%+n0J?F%wxGKNMTVgX zR=znO5yR&8p_(gdCikh)scM-H`!Dk^S^L&lPFI^wrPM!sH}?Y7CJe&^8~uF zKlyiYuJU|)9GDUxF~eN^C8bnDdq&+VB2(678}eG2P>S=^j!(C?p0K!>B$pAo)WlX* zXI7Jsv2*A0+K|e~yV^Vshc*L=r7i6*5!80rxvb5TgYDFI+-8<3WZFC)Kj-er+Sh~Q^9g-4{&dS|zdoHY&CLO)1Md<$cnq6~S%s?-4++17KF^zWKCF!pH z=uUbOUS}}0Tl#I~3j?+qe6~RJGYV~)FwfHHzFkVIJBQjQb~1Lb)+KuVc1&RgF4bP* zvdInNE3gnNVPsXMUT81+-PB#Z%Pz(si03#p$86c%%3h+ZW#pS}BAZnzn->wRu#k zCdMM?o`+FOoTs=Gowc~W9rT<4e+HLr(QMqOSbt&^RNHjjN7qm4YTq+tLsx>EKKgjj z&Nzc|N7ebU2^VQ;pk^UuE>%Nj34-Z|xTsnW>HD!qxA-yCd)KCD*e=$TC!oGRyEJ>fF(!IGR^H~bR zJo@yV+=P8?t%v2EI-`eeFV)oV68ahmYPp#irY9O{Z?Eg8e?> zJ(&qhg<=D}F1#`)mhcGzI{Hu|Jh1`35DYVzsxmFY6EfKXN3-I}+WznXSJY+Sl+dnn1n~vOrUQ_N>LC@>VC-DE%$9YCI zv26i(h|)x*8H%7(0gZrw!UYKeNu;+>6-bPM_yQ?}jsY9ZLXjGZTqIX%0Ym{&1O=3; zktY}hiBhGbbQBTac<*})&5yTd&6@c!-`R8ao7b(6Fg({nKNlRoxcWXbuA z>&BR3vdxQ85o-aT?B&EC9+r(zLt~RgoxyjSQSG9vcoun$64P^Ei61e?gfLn8LW&BH zoNRAKD1K*IQhmSDr+WpcyK7?|>cvdh=^JSi3_rzhYvb?}CQ>&l%iG0ir>yL)={DgA zzqeSwEuJgMrvpp^Q%86Ac>Hl7?8?JAzP$PRkC){P9sFWcp;yQKY3uc!iBnqrim7|| z$r=?8OtnY!`?uug>D)(>S2R?olP|?fN2c4EcXr=MXj;*4>^1KX^a_MvY{eG<)*D@_ z#QP`KlFhmL;TuDSv>&2s z)2=g;?QRr7Lt-Qtk7BzKUQUY@R^I=&?B9T$x12ck6v z4ApA3*A_0@4L@A#L`wjqHhe)wgLn+N)AC|uTSsnfjlnB?zDeDbiSfx?gjp$sSm^@I zN(7QU$|*IoOnvNeohe9G!X`}wpE z^vmhgZN!!Q=E0ZlYg*9>KVWU?kgmYj8gt0=$u=jy2*!@I;+A|oWOv?|WA8_2`mm&6 zCGo|heo&Ohu~UhCXJeDD&hMfLmd}R=2)4v|LJ<#=uMQt{SnAUa(g~N5ubA6Itm3QaEEanHVXB zXOL@J#R>`Dw4jxeo;Ll)#-kuE);WH?RcvZrz<-Ilt}|k`Kj# zB7)4~&SWc+xc8sx#@aj6BP`R6)`%y_#Eid=oBb*!7rWs~a$fM0NB35dbq!-rdT0eD`g5w`?eXKEv0XYMG-eP2fmmtQDG|o_hulvr+)~`!Bb0FXLM;f6SU0pMp7* z&e(JpF#{!B#=b(-sME5jdunU!oZ!Nxp7*51 zy_^R8-S|f;JI!3p2cGVsz+0C*`HreG>_T-Rm9EsFE+GM_5+J9OcH0fU+5+#9$mlbe zy|iG>{?2jBPCYae8rxULePY%%Ql!sPOf}RE5}5u@w`?B1V!ca-cKWD$FLy|UsS<>z zBgORI;aq`(rOH4XhcP?%%4+%Q@xhvVd|q#%C$9U@pu+@M(`=s5H`Vo7@nTZ|0&X3r zEi|z^=~+|Ll1@j6T3vSGdzFnfcrT(`$%cQjY>EOGaxv}v8 zfV4B?1uAwr-o}CN=qCvP;N_RlA^-q_M8*5_A`--Hd_NIO5ZV3<008&=|BE20WE_za z#7k1r!vf+ zpgEEk;9dK$nTbCW!m|>Bm*rLZH(5Uh}bOeb{YW0z#|lF Lq0uw&YX<%U5lllq diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.dsf b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.dsf index 5279f96..094fdbe 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.dsf +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.dsf @@ -1,3 +1,43 @@ +:udbswitch@[UDB=(2,0)][side=top]:97,1_f +:udbswitch@[UDB=(2,0)][side=top]:97,4_f +:udbswitch@[UDB=(2,0)][side=top]:97,43_f +:udbswitch@[UDB=(2,0)][side=top]:97,46_f +:udbswitch@[UDB=(2,0)][side=top]:97,67_f +:udbswitch@[UDB=(2,0)][side=top]:97,70_f +:udbswitch@[UDB=(2,0)][side=top]:97,72_f +:udbswitch@[UDB=(2,0)][side=top]:97,75_f +:udbswitch@[UDB=(2,0)][side=top]:99,7_f +:udbswitch@[UDB=(2,0)][side=top]:99,10_f +:udbswitch@[UDB=(2,0)][side=top]:99,37_f +:udbswitch@[UDB=(2,0)][side=top]:99,40_f +:udbswitch@[UDB=(2,0)][side=top]:99,61_f +:udbswitch@[UDB=(2,0)][side=top]:99,64_f +:udbswitch@[UDB=(2,0)][side=top]:99,78_f +:udbswitch@[UDB=(2,0)][side=top]:99,81_f +:udbswitch@[UDB=(2,0)][side=top]:101,13_f +:udbswitch@[UDB=(2,0)][side=top]:101,16_f +:udbswitch@[UDB=(2,0)][side=top]:101,31_f +:udbswitch@[UDB=(2,0)][side=top]:101,34_f +:udbswitch@[UDB=(2,0)][side=top]:101,55_f +:udbswitch@[UDB=(2,0)][side=top]:101,58_f +:udbswitch@[UDB=(2,0)][side=top]:101,84_f +:udbswitch@[UDB=(2,0)][side=top]:101,87_f +:udbswitch@[UDB=(2,0)][side=top]:103,19_f +:udbswitch@[UDB=(2,0)][side=top]:103,22_f +:udbswitch@[UDB=(2,0)][side=top]:103,25_f +:udbswitch@[UDB=(2,0)][side=top]:103,28_f +:udbswitch@[UDB=(2,0)][side=top]:103,49_f +:udbswitch@[UDB=(2,0)][side=top]:103,52_f +:udbswitch@[UDB=(2,0)][side=top]:103,90_f +:udbswitch@[UDB=(2,0)][side=top]:103,93_f +:udbswitch@[UDB=(2,4)][side=top]:103,19_f +:udbswitch@[UDB=(2,4)][side=top]:103,22_f +:udbswitch@[UDB=(2,4)][side=top]:103,25_f +:udbswitch@[UDB=(2,4)][side=top]:103,28_f +:udbswitch@[UDB=(2,4)][side=top]:103,49_f +:udbswitch@[UDB=(2,4)][side=top]:103,52_f +:udbswitch@[UDB=(2,4)][side=top]:103,90_f +:udbswitch@[UDB=(2,4)][side=top]:103,93_f :udbswitch@[UDB=(2,5)][side=top]:102,18_f :udbswitch@[UDB=(2,5)][side=top]:102,22_f :udbswitch@[UDB=(2,5)][side=top]:102,25_f @@ -6,6 +46,14 @@ :udbswitch@[UDB=(2,5)][side=top]:102,53_f :udbswitch@[UDB=(2,5)][side=top]:102,90_f :udbswitch@[UDB=(2,5)][side=top]:102,92_f +:udbswitch@[UDB=(2,0)][side=top]:102,18_f +:udbswitch@[UDB=(2,0)][side=top]:102,22_f +:udbswitch@[UDB=(2,0)][side=top]:102,25_f +:udbswitch@[UDB=(2,0)][side=top]:102,29_f +:udbswitch@[UDB=(2,0)][side=top]:102,49_f +:udbswitch@[UDB=(2,0)][side=top]:102,53_f +:udbswitch@[UDB=(2,0)][side=top]:102,90_f +:udbswitch@[UDB=(2,0)][side=top]:102,92_f :udbswitch@[UDB=(2,3)][side=top]:102,18_f :udbswitch@[UDB=(2,3)][side=top]:102,22_f :udbswitch@[UDB=(2,3)][side=top]:102,25_f @@ -14,11 +62,3 @@ :udbswitch@[UDB=(2,3)][side=top]:102,53_f :udbswitch@[UDB=(2,3)][side=top]:102,90_f :udbswitch@[UDB=(2,3)][side=top]:102,92_f -:udbswitch@[UDB=(2,4)][side=top]:103,19_f -:udbswitch@[UDB=(2,4)][side=top]:103,22_f -:udbswitch@[UDB=(2,4)][side=top]:103,25_f -:udbswitch@[UDB=(2,4)][side=top]:103,28_f -:udbswitch@[UDB=(2,4)][side=top]:103,49_f -:udbswitch@[UDB=(2,4)][side=top]:103,52_f -:udbswitch@[UDB=(2,4)][side=top]:103,90_f -:udbswitch@[UDB=(2,4)][side=top]:103,93_f diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.pci b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.pci index b3c2c82..4e4da0b 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.pci +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.pci @@ -1,5 +1,5 @@ # PSOC5_SPI_LSM303D -# 2013-03-22 09:33:26Z +# 2013-07-25 14:48:56Z # IO_0@[IOP=(1)][IoId=(0)] is reserved: SWDDebugEnabled dont_use_io iocell 1 0 @@ -11,6 +11,7 @@ set_io "Pin_1(0)" iocell 3 0 set_io "Pin_2(0)" iocell 3 1 set_io "Pin_3(0)" iocell 3 2 set_io "Pin_4(0)" iocell 3 3 +set_io "Pin_5(0)" iocell 3 4 set_io "Tx_1(0)" iocell 3 7 set_io "\LCD:LCDPort(0)\" iocell 2 0 set_io "\LCD:LCDPort(1)\" iocell 2 1 diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.pco b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.pco index ffe013e..7e7cd47 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.pco +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.pco @@ -1,5 +1,5 @@ # PSOC5_SPI_LSM303D -# 2013-03-22 09:33:27Z +# 2013-07-25 14:48:57Z # IO_0@[IOP=(1)][IoId=(0)] is reserved: SWDDebugEnabled dont_use_io iocell 1 0 @@ -8,18 +8,21 @@ dont_use_io iocell 1 1 # IO_3@[IOP=(1)][IoId=(3)] is reserved: SWDDebugEnabled dont_use_io iocell 1 3 set_location "ClockBlock" clockblockcell -1 -1 0 -set_location "Net_234" 3 4 0 1 -set_location "Net_30" 3 3 0 2 -set_location "Net_419" 3 3 0 3 -set_location "Net_422" 3 3 1 0 -set_location "Net_425" 3 3 1 1 -set_location "Net_428" 3 3 1 2 -set_location "Net_439" 3 3 0 0 -set_location "Net_479" 2 3 1 1 +set_location "ClockBlock_1k__SYNC" 3 0 5 0 +set_location "Net_234" 3 4 0 2 +set_location "Net_30" 3 5 0 2 +set_location "Net_419" 3 5 0 3 +set_location "Net_422" 3 5 1 0 +set_location "Net_425" 3 5 1 1 +set_location "Net_428" 3 5 1 2 +set_location "Net_439" 3 5 0 1 +set_location "Net_479" 3 5 0 0 +set_location "Net_585" 3 5 1 3 set_io "Pin_1(0)" iocell 3 0 set_io "Pin_2(0)" iocell 3 1 set_io "Pin_3(0)" iocell 3 2 set_io "Pin_4(0)" iocell 3 3 +set_io "Pin_5(0)" iocell 3 4 set_io "Tx_1(0)" iocell 3 7 set_io "\LCD:LCDPort(0)\" iocell 2 0 set_io "\LCD:LCDPort(1)\" iocell 2 1 @@ -29,37 +32,45 @@ set_io "\LCD:LCDPort(4)\" iocell 2 4 set_io "\LCD:LCDPort(5)\" iocell 2 5 set_io "\LCD:LCDPort(6)\" iocell 2 6 set_location "\SPIM:BSPIM:BitCounter\" 2 4 7 -set_location "\SPIM:BSPIM:RxStsReg\" 2 5 4 -set_location "\SPIM:BSPIM:TxStsReg\" 2 3 4 -set_location "\SPIM:BSPIM:cnt_enable\" 2 3 0 0 -set_location "\SPIM:BSPIM:dpcounter_one\" 2 3 1 3 +set_location "\SPIM:BSPIM:RxStsReg\" 3 4 4 +set_location "\SPIM:BSPIM:TxStsReg\" 2 5 4 +set_location "\SPIM:BSPIM:cnt_enable\" 2 5 0 0 +set_location "\SPIM:BSPIM:dpcounter_one\" 2 5 1 3 set_location "\SPIM:BSPIM:is_spi_done\" 2 4 1 0 -set_location "\SPIM:BSPIM:ld_ident\" 3 3 0 1 -set_location "\SPIM:BSPIM:load_cond\" 2 3 1 0 -set_location "\SPIM:BSPIM:load_rx_data\" 2 3 1 2 +set_location "\SPIM:BSPIM:ld_ident\" 2 5 1 1 +set_location "\SPIM:BSPIM:load_cond\" 2 5 1 0 +set_location "\SPIM:BSPIM:load_rx_data\" 2 5 1 2 set_location "\SPIM:BSPIM:mosi_from_dp_reg\" 3 4 0 0 -set_location "\SPIM:BSPIM:mosi_hs_reg\" 3 5 1 0 +set_location "\SPIM:BSPIM:mosi_hs_reg\" 3 3 1 0 set_location "\SPIM:BSPIM:mosi_pre_reg\" 2 4 0 0 -set_location "\SPIM:BSPIM:rx_status_6\" 2 5 0 0 +set_location "\SPIM:BSPIM:rx_status_6\" 2 3 0 0 set_location "\SPIM:BSPIM:sR8:Dp:u0\" 2 4 2 set_location "\SPIM:BSPIM:state_0\" 2 4 1 3 -set_location "\SPIM:BSPIM:state_1\" 2 3 0 1 +set_location "\SPIM:BSPIM:state_1\" 2 5 0 1 set_location "\SPIM:BSPIM:state_2\" 2 4 1 1 set_location "\SPIM:BSPIM:tx_status_0\" 2 4 1 2 -set_location "\SPIM:BSPIM:tx_status_4\" 2 3 0 2 -set_location "\SS:Async:ctrl_reg\" 3 3 6 -set_location "\UART_1:BUART:counter_load_not\" 3 5 1 1 -set_location "\UART_1:BUART:sTX:TxShifter:u0\" 3 5 2 -set_location "\UART_1:BUART:sTX:TxSts\" 3 4 4 -set_location "\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\" 2 5 2 -set_location "\UART_1:BUART:tx_bitclk\" 2 5 1 0 -set_location "\UART_1:BUART:tx_bitclk_enable_pre\" 2 5 1 1 -set_location "\UART_1:BUART:tx_state_0\" 2 5 0 1 -set_location "\UART_1:BUART:tx_state_1\" 2 5 0 2 -set_location "\UART_1:BUART:tx_state_2\" 3 5 0 1 -set_location "\UART_1:BUART:tx_status_0\" 2 5 0 3 -set_location "\UART_1:BUART:tx_status_2\" 3 4 0 2 -set_location "\UART_1:BUART:txn\" 3 5 0 0 +set_location "\SPIM:BSPIM:tx_status_4\" 2 5 0 2 +set_location "\SS:Async:ctrl_reg\" 3 5 6 +set_location "\Timer_1:TimerUDB:nrstSts:stsreg\" 2 0 4 +set_location "\Timer_1:TimerUDB:run_mode\" 2 0 0 3 +set_location "\Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\" 2 0 6 +set_location "\Timer_1:TimerUDB:sT16:timerdp:u0\" 2 0 2 +set_location "\Timer_1:TimerUDB:sT16:timerdp:u1\" 3 0 2 +set_location "\Timer_1:TimerUDB:status_tc\" 2 0 0 2 +set_location "\Timer_1:TimerUDB:timer_enable\" 2 0 0 0 +set_location "\Timer_1:TimerUDB:trig_disable\" 2 0 0 1 +set_location "\UART_1:BUART:counter_load_not\" 3 3 1 1 +set_location "\UART_1:BUART:sTX:TxShifter:u0\" 2 3 2 +set_location "\UART_1:BUART:sTX:TxSts\" 2 3 4 +set_location "\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\" 3 3 2 +set_location "\UART_1:BUART:tx_bitclk\" 2 3 1 0 +set_location "\UART_1:BUART:tx_bitclk_enable_pre\" 2 3 1 1 +set_location "\UART_1:BUART:tx_state_0\" 2 3 0 1 +set_location "\UART_1:BUART:tx_state_1\" 3 0 1 0 +set_location "\UART_1:BUART:tx_state_2\" 3 3 0 1 +set_location "\UART_1:BUART:tx_status_0\" 2 3 0 3 +set_location "\UART_1:BUART:tx_status_2\" 2 3 1 3 +set_location "\UART_1:BUART:txn\" 3 3 0 0 set_io "m_miso_pin(0)" iocell 0 0 set_io "m_mosi_pin(0)" iocell 0 5 set_io "m_sclk_pin(0)" iocell 0 6 diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.plc_log b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.plc_log index 9cd1cba..691d4cd 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.plc_log +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.plc_log @@ -1,2 +1,2 @@ -I2076: Total run-time: 1.0 sec. +I2076: Total run-time: 1.1 sec. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.route b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.route index 92b817a..e7ea0c6 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.route +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.route @@ -1,317 +1,368 @@ -net \SPIM:BSPIM:rx_status_4\ - term ":udb@[UDB=(2,4)]:dp_wrapper:datapath.f1_blk_stat_comb" - switch ":udb@[UDB=(2,4)]:dp_wrapper:datapath.f1_blk_stat_comb==>:udb@[UDB=(2,4)]:dp_wrapper:output_permute.f1_blk_stat_comb" - switch ":udb@[UDB=(2,4)]:dp_wrapper:output_permute.outs_1==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v78" - switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v78" - switch ":udbswitch@[UDB=(2,4)][side=top]:78,28" - switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_28_f" - switch ":udbswitch@[UDB=(2,5)][side=top]:0,28_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v0" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v0==>:udb@[UDB=(2,5)]:pld0:input_permute.input_0" +net \Timer_1:TimerUDB:per_zero\ + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.z0_comb" + switch ":udb@[UDB=(3,0)]:dp_wrapper:datapath.z0_comb==>:udb@[UDB=(3,0)]:dp_wrapper:output_permute.z0_comb" + switch ":udb@[UDB=(3,0)]:dp_wrapper:output_permute.outs_2==>Stub-:udbswitch@[UDB=(2,0)][side=top]:v81" + switch "OStub-:udbswitch@[UDB=(2,0)][side=top]:v81" + switch ":udbswitch@[UDB=(2,0)][side=top]:81,70" + switch ":udbswitch@[UDB=(2,0)][side=top]:70,70_f" + switch "IStub-:udbswitch@[UDB=(2,0)][side=top]:v70" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v70==>:udb@[UDB=(2,0)]:dp_wrapper:input_permute.ina_3" + switch ":udb@[UDB=(2,0)]:dp_wrapper:input_permute.cs_addr_0==>:udb@[UDB=(2,0)]:dp_wrapper:datapath.cs_addr_0" + term ":udb@[UDB=(2,0)]:dp_wrapper:datapath.cs_addr_0" + switch ":udbswitch@[UDB=(2,0)][side=top]:71,70_f" + switch "IStub-:udbswitch@[UDB=(2,0)][side=top]:v71" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v71==>:udb@[UDB=(3,0)]:dp_wrapper:input_permute.ina_3" + switch ":udb@[UDB=(3,0)]:dp_wrapper:input_permute.cs_addr_0==>:udb@[UDB=(3,0)]:dp_wrapper:datapath.cs_addr_0" + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.cs_addr_0" + switch ":udbswitch@[UDB=(2,0)][side=top]:81,23" + switch ":udbswitch@[UDB=(2,0)][side=top]:16,23_f" + switch "IStub-:udbswitch@[UDB=(2,0)][side=top]:v16" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v16==>:udb@[UDB=(2,0)]:pld0:input_permute.input_8" + switch ":udb@[UDB=(2,0)]:pld0:input_permute.mc2_main_1==>:udb@[UDB=(2,0)]:pld0:mc2.main_1" + term ":udb@[UDB=(2,0)]:pld0:mc2.main_1" + switch ":udb@[UDB=(2,0)]:pld0:input_permute.mc0_main_3==>:udb@[UDB=(2,0)]:pld0:mc0.main_3" + term ":udb@[UDB=(2,0)]:pld0:mc0.main_3" + switch ":udb@[UDB=(2,0)]:pld0:input_permute.mc1_main_2==>:udb@[UDB=(2,0)]:pld0:mc1.main_2" + term ":udb@[UDB=(2,0)]:pld0:mc1.main_2" +end \Timer_1:TimerUDB:per_zero\ +net \Timer_1:TimerUDB:sT16:timerdp:u0.z0__sig\ + term ":udb@[UDB=(2,0)]:dp_wrapper:datapath.z0" + switch ":udb@[UDB=(2,0)]:dp_wrapper:datapath.z0==>:udb@[UDB=(3,0)]:dp_wrapper:datapath.z0i" + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.z0i" +end \Timer_1:TimerUDB:sT16:timerdp:u0.z0__sig\ +net \Timer_1:TimerUDB:sT16:timerdp:u0.co_msb__sig\ + term ":udb@[UDB=(2,0)]:dp_wrapper:datapath.co_msb" + switch ":udb@[UDB=(2,0)]:dp_wrapper:datapath.co_msb==>:udb@[UDB=(3,0)]:dp_wrapper:datapath.ci" + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.ci" +end \Timer_1:TimerUDB:sT16:timerdp:u0.co_msb__sig\ +net \Timer_1:TimerUDB:timer_enable\ + term ":udb@[UDB=(2,0)]:pld0:mc0.q" + switch ":udb@[UDB=(2,0)]:pld0:mc0.q==>:udb@[UDB=(2,0)]:pld0:output_permute2.q_0" + switch ":udb@[UDB=(2,0)]:pld0:output_permute2.output_2==>Stub-:udbswitch@[UDB=(2,0)][side=top]:v28" + switch "OStub-:udbswitch@[UDB=(2,0)][side=top]:v28" + switch ":udbswitch@[UDB=(2,0)][side=top]:28,6" + switch ":udbswitch@[UDB=(2,0)][side=top]:66,6_f" + switch "IStub-:udbswitch@[UDB=(2,0)][side=top]:v66" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v66==>:udb@[UDB=(2,0)]:dp_wrapper:input_permute.ina_1" + switch ":udb@[UDB=(2,0)]:dp_wrapper:input_permute.cs_addr_1==>:udb@[UDB=(2,0)]:dp_wrapper:datapath.cs_addr_1" + term ":udb@[UDB=(2,0)]:dp_wrapper:datapath.cs_addr_1" + switch ":udbswitch@[UDB=(2,0)][side=top]:28,86" + switch ":udbswitch@[UDB=(2,0)][side=top]:75,86_f" + switch "IStub-:udbswitch@[UDB=(2,0)][side=top]:v75" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v75==>:udb@[UDB=(3,0)]:dp_wrapper:input_permute.ina_5" + switch ":udb@[UDB=(3,0)]:dp_wrapper:input_permute.cs_addr_1==>:udb@[UDB=(3,0)]:dp_wrapper:datapath.cs_addr_1" + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.cs_addr_1" + switch ":udbswitch@[UDB=(2,0)][side=top]:2,6_f" + switch "IStub-:udbswitch@[UDB=(2,0)][side=top]:v2" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v2==>:udb@[UDB=(2,0)]:pld0:input_permute.input_1" + switch ":udb@[UDB=(2,0)]:pld0:input_permute.mc0_main_1==>:udb@[UDB=(2,0)]:pld0:mc0.main_1" + term ":udb@[UDB=(2,0)]:pld0:mc0.main_1" + switch ":udb@[UDB=(2,0)]:pld0:input_permute.mc1_main_0==>:udb@[UDB=(2,0)]:pld0:mc1.main_0" + term ":udb@[UDB=(2,0)]:pld0:mc1.main_0" +end \Timer_1:TimerUDB:timer_enable\ +net \Timer_1:TimerUDB:status_tc\ + term ":udb@[UDB=(2,0)]:pld0:mc2.q" + switch ":udb@[UDB=(2,0)]:pld0:mc2.q==>:udb@[UDB=(2,0)]:pld0:output_permute0.q_2" + switch ":udb@[UDB=(2,0)]:pld0:output_permute0.output_0==>Stub-:udbswitch@[UDB=(2,0)][side=top]:v24" + switch "OStub-:udbswitch@[UDB=(2,0)][side=top]:v24" + switch ":udbswitch@[UDB=(2,0)][side=top]:24,66" + switch ":udbswitch@[UDB=(2,0)][side=top]:88,66_f" + switch "IStub-:udbswitch@[UDB=(2,0)][side=top]:v88" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v88==>:udb@[UDB=(2,0)]:statusicell.status_0" + term ":udb@[UDB=(2,0)]:statusicell.status_0" +end \Timer_1:TimerUDB:status_tc\ +net \Timer_1:TimerUDB:run_mode\ + term ":udb@[UDB=(2,0)]:pld0:mc3.q" + switch ":udb@[UDB=(2,0)]:pld0:mc3.q==>:udb@[UDB=(2,0)]:pld0:output_permute3.q_3" + switch ":udb@[UDB=(2,0)]:pld0:output_permute3.output_3==>Stub-:udbswitch@[UDB=(2,0)][side=top]:v30" + switch "OStub-:udbswitch@[UDB=(2,0)][side=top]:v30" + switch ":udbswitch@[UDB=(2,0)][side=top]:30,51" + switch ":udbswitch@[UDB=(2,0)][side=top]:14,51_f" + switch "IStub-:udbswitch@[UDB=(2,0)][side=top]:v14" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v14==>:udb@[UDB=(2,0)]:pld0:input_permute.input_7" + switch ":udb@[UDB=(2,0)]:pld0:input_permute.mc2_main_0==>:udb@[UDB=(2,0)]:pld0:mc2.main_0" + term ":udb@[UDB=(2,0)]:pld0:mc2.main_0" + switch ":udb@[UDB=(2,0)]:pld0:input_permute.mc0_main_2==>:udb@[UDB=(2,0)]:pld0:mc0.main_2" + term ":udb@[UDB=(2,0)]:pld0:mc0.main_2" + switch ":udb@[UDB=(2,0)]:pld0:input_permute.mc1_main_1==>:udb@[UDB=(2,0)]:pld0:mc1.main_1" + term ":udb@[UDB=(2,0)]:pld0:mc1.main_1" +end \Timer_1:TimerUDB:run_mode\ +net \Timer_1:TimerUDB:control_7\ + term ":udb@[UDB=(2,0)]:controlcell.control_7" + switch ":udb@[UDB=(2,0)]:controlcell.control_7==>:udb@[UDB=(2,0)]:controlcell_control_7_permute.in_0" + switch ":udb@[UDB=(2,0)]:controlcell_control_7_permute.controlcell_control_7==>Stub-:udbswitch@[UDB=(2,0)][side=top]:v118" + switch "OStub-:udbswitch@[UDB=(2,0)][side=top]:v118" + switch ":udbswitch@[UDB=(2,0)][side=top]:118,5" + switch ":udbswitch@[UDB=(2,0)][side=top]:22,5_f" + switch "IStub-:udbswitch@[UDB=(2,0)][side=top]:v22" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v22==>:udb@[UDB=(2,0)]:pld0:input_permute.input_11" + switch ":udb@[UDB=(2,0)]:pld0:input_permute.mc3_main_0==>:udb@[UDB=(2,0)]:pld0:mc3.main_0" + term ":udb@[UDB=(2,0)]:pld0:mc3.main_0" + switch ":udb@[UDB=(2,0)]:pld0:input_permute.mc0_main_0==>:udb@[UDB=(2,0)]:pld0:mc0.main_0" + term ":udb@[UDB=(2,0)]:pld0:mc0.main_0" +end \Timer_1:TimerUDB:control_7\ +net \Timer_1:TimerUDB:trig_disable\ + term ":udb@[UDB=(2,0)]:pld0:mc1.q" + switch ":udb@[UDB=(2,0)]:pld0:mc1.q==>:udb@[UDB=(2,0)]:pld0:output_permute1.q_1" + switch ":udb@[UDB=(2,0)]:pld0:output_permute1.output_1==>Stub-:udbswitch@[UDB=(2,0)][side=top]:v26" + switch "OStub-:udbswitch@[UDB=(2,0)][side=top]:v26" + switch ":udbswitch@[UDB=(2,0)][side=top]:26,60" + switch ":udbswitch@[UDB=(2,0)][side=top]:10,60_f" + switch "IStub-:udbswitch@[UDB=(2,0)][side=top]:v10" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v10==>:udb@[UDB=(2,0)]:pld0:input_permute.input_5" + switch ":udb@[UDB=(2,0)]:pld0:input_permute.mc0_main_4==>:udb@[UDB=(2,0)]:pld0:mc0.main_4" + term ":udb@[UDB=(2,0)]:pld0:mc0.main_4" + switch ":udb@[UDB=(2,0)]:pld0:input_permute.mc1_main_3==>:udb@[UDB=(2,0)]:pld0:mc1.main_3" + term ":udb@[UDB=(2,0)]:pld0:mc1.main_3" +end \Timer_1:TimerUDB:trig_disable\ +net ClockBlock_1k__SYNC_OUT + term ":udb@[UDB=(3,0)]:sync_wrapper:sync0.out" + switch ":udb@[UDB=(3,0)]:sync_wrapper:sync0.out==>Stub-:udbswitch@[UDB=(2,0)][side=top]:v97" + switch "OStub-:udbswitch@[UDB=(2,0)][side=top]:v97" + switch ":udbswitch@[UDB=(2,0)][side=top]:97,1_b" + switch ":udbswitch@[UDB=(2,0)][side=top]:126,1_f" + switch "IStub-:udbswitch@[UDB=(2,0)][side=top]:v126" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v126==>:udb@[UDB=(2,0)]:clockreset:clken_sc_mux.in_3" + switch ":udb@[UDB=(2,0)]:clockreset:clken_sc_mux.sc_clken==>:udb@[UDB=(2,0)]:statusicell.clk_en" + term ":udb@[UDB=(2,0)]:statusicell.clk_en" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v126==>:udb@[UDB=(2,0)]:clockreset:clken_pld0_mux.in_3" + switch ":udb@[UDB=(2,0)]:clockreset:clken_pld0_mux.pld0_clken==>:udb@[UDB=(2,0)]:pld0:mc3.clk_en" + term ":udb@[UDB=(2,0)]:pld0:mc3.clk_en" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v126==>:udb@[UDB=(2,0)]:clockreset:clken_dp_mux.in_3" + switch ":udb@[UDB=(2,0)]:clockreset:clken_dp_mux.dp_clken==>:udb@[UDB=(2,0)]:dp_wrapper:datapath.clk_en" + term ":udb@[UDB=(2,0)]:dp_wrapper:datapath.clk_en" + switch ":udbswitch@[UDB=(2,0)][side=top]:97,75_b" + switch ":udbswitch@[UDB=(2,0)][side=top]:121,75_f" + switch "IStub-:udbswitch@[UDB=(2,0)][side=top]:v121" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v121==>:udb@[UDB=(3,0)]:clockreset:clken_dp_mux.in_0" + switch ":udb@[UDB=(3,0)]:clockreset:clken_dp_mux.dp_clken==>:udb@[UDB=(3,0)]:dp_wrapper:datapath.clk_en" + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.clk_en" + switch ":udb@[UDB=(2,0)]:clockreset:clken_pld0_mux.pld0_clken==>:udb@[UDB=(2,0)]:pld0:mc0.clk_en" + term ":udb@[UDB=(2,0)]:pld0:mc0.clk_en" + switch ":udb@[UDB=(2,0)]:clockreset:clken_pld0_mux.pld0_clken==>:udb@[UDB=(2,0)]:pld0:mc1.clk_en" + term ":udb@[UDB=(2,0)]:pld0:mc1.clk_en" +end ClockBlock_1k__SYNC_OUT +net \SPIM:BSPIM:count_2\ + term ":udb@[UDB=(2,4)]:count7cell.count_2" + switch ":udb@[UDB=(2,4)]:count7cell.count_2==>:udb@[UDB=(2,4)]:controlcell_control_2_permute.in_1" + switch ":udb@[UDB=(2,4)]:controlcell_control_2_permute.controlcell_control_2==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v108" + switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v108" + switch ":udbswitch@[UDB=(2,4)][side=top]:108,57" + switch ":udbswitch@[UDB=(2,4)][side=top]:123,57_f" + switch ":udbswitch@[UDB=(2,4)][side=top]:123,16_b" + switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_16_f" + switch ":udbswitch@[UDB=(2,5)][side=top]:44,16_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v44" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v44==>:udb@[UDB=(2,5)]:pld1:input_permute.input_9" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc3_main_2==>:udb@[UDB=(2,5)]:pld1:mc3.main_2" + term ":udb@[UDB=(2,5)]:pld1:mc3.main_2" + switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_16_b" + switch ":udbswitch@[UDB=(2,3)][side=top]:12,16_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v12" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v12==>:udb@[UDB=(2,3)]:pld0:input_permute.input_6" + switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc0_main_2==>:udb@[UDB=(2,3)]:pld0:mc0.main_2" + term ":udb@[UDB=(2,3)]:pld0:mc0.main_2" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc0_main_5==>:udb@[UDB=(2,5)]:pld1:mc0.main_5" + term ":udb@[UDB=(2,5)]:pld1:mc0.main_5" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc2_main_2==>:udb@[UDB=(2,5)]:pld1:mc2.main_2" + term ":udb@[UDB=(2,5)]:pld1:mc2.main_2" + switch ":udbswitch@[UDB=(2,4)][side=top]:44,16_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v44" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v44==>:udb@[UDB=(2,4)]:pld1:input_permute.input_9" + switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc0_main_5==>:udb@[UDB=(2,4)]:pld1:mc0.main_5" + term ":udb@[UDB=(2,4)]:pld1:mc0.main_5" + switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc1_main_5==>:udb@[UDB=(2,4)]:pld1:mc1.main_5" + term ":udb@[UDB=(2,4)]:pld1:mc1.main_5" + switch ":udbswitch@[UDB=(2,5)][side=top]:44,13_b" + switch ":udbswitch@[UDB=(2,5)][side=top]:18,13_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v18" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v18==>:udb@[UDB=(2,5)]:pld0:input_permute.input_9" switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc0_main_5==>:udb@[UDB=(2,5)]:pld0:mc0.main_5" term ":udb@[UDB=(2,5)]:pld0:mc0.main_5" - switch ":udbswitch@[UDB=(2,5)][side=top]:0,0_b" - switch ":udbswitch@[UDB=(2,5)][side=top]:96,0_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v96" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v96==>:udb@[UDB=(2,5)]:statusicell.status_4" - term ":udb@[UDB=(2,5)]:statusicell.status_4" -end \SPIM:BSPIM:rx_status_4\ -net \SPIM:BSPIM:rx_status_6\ - term ":udb@[UDB=(2,5)]:pld0:mc0.q" - switch ":udb@[UDB=(2,5)]:pld0:mc0.q==>:udb@[UDB=(2,5)]:pld0:output_permute1.q_0" - switch ":udb@[UDB=(2,5)]:pld0:output_permute1.output_1==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v26" - switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v26" - switch ":udbswitch@[UDB=(2,5)][side=top]:26,12" - switch ":udbswitch@[UDB=(2,5)][side=top]:100,12_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v100" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v100==>:udb@[UDB=(2,5)]:statusicell.status_6" - term ":udb@[UDB=(2,5)]:statusicell.status_6" -end \SPIM:BSPIM:rx_status_6\ -net \SPIM:BSPIM:mosi_from_dp\ - term ":udb@[UDB=(2,4)]:dp_wrapper:datapath.so_comb" - switch ":udb@[UDB=(2,4)]:dp_wrapper:datapath.so_comb==>:udb@[UDB=(2,4)]:dp_wrapper:output_permute.so_comb" - switch ":udb@[UDB=(2,4)]:dp_wrapper:output_permute.outs_2==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v80" - switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v80" - switch ":udbswitch@[UDB=(2,4)][side=top]:80,93" - switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_93_f" - switch ":udbswitch@[UDB=(2,5)][side=top]:47,93_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v47" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v47==>:udb@[UDB=(3,5)]:pld1:input_permute.input_8" - switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc0_main_3==>:udb@[UDB=(3,5)]:pld1:mc0.main_3" - term ":udb@[UDB=(3,5)]:pld1:mc0.main_3" - switch ":udbswitch@[UDB=(2,4)][side=top]:80,67" - switch ":udbswitch@[UDB=(2,4)][side=top]:1,67_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v1" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v1==>:udb@[UDB=(3,4)]:pld0:input_permute.input_0" - switch ":udb@[UDB=(3,4)]:pld0:input_permute.mc0_main_0==>:udb@[UDB=(3,4)]:pld0:mc0.main_0" - term ":udb@[UDB=(3,4)]:pld0:mc0.main_0" - switch ":udbswitch@[UDB=(2,4)][side=top]:8,93_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v8" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v8==>:udb@[UDB=(2,4)]:pld0:input_permute.input_4" - switch ":udb@[UDB=(2,4)]:pld0:input_permute.mc0_main_3==>:udb@[UDB=(2,4)]:pld0:mc0.main_3" - term ":udb@[UDB=(2,4)]:pld0:mc0.main_3" -end \SPIM:BSPIM:mosi_from_dp\ -net \SPIM:BSPIM:state_2\ - term ":udb@[UDB=(2,4)]:pld1:mc1.q" - switch ":udb@[UDB=(2,4)]:pld1:mc1.q==>:udb@[UDB=(2,4)]:pld1:output_permute2.q_1" - switch ":udb@[UDB=(2,4)]:pld1:output_permute2.output_2==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v34" - switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v34" - switch ":udbswitch@[UDB=(2,4)][side=top]:34,63" - switch ":udbswitch@[UDB=(2,4)][side=top]:50,63_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v50" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v50==>:udb@[UDB=(2,4)]:pld1:input_permute.input_6" - switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc2_main_0==>:udb@[UDB=(2,4)]:pld1:mc2.main_0" - term ":udb@[UDB=(2,4)]:pld1:mc2.main_0" - switch ":udbswitch@[UDB=(2,4)][side=top]:34,6" - switch ":udbswitch@[UDB=(2,4)][side=top]:66,6_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v66" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v66==>:udb@[UDB=(2,4)]:dp_wrapper:input_permute.ina_1" - switch ":udb@[UDB=(2,4)]:dp_wrapper:input_permute.cs_addr_2==>:udb@[UDB=(2,4)]:dp_wrapper:datapath.cs_addr_2" - term ":udb@[UDB=(2,4)]:dp_wrapper:datapath.cs_addr_2" - switch ":udbswitch@[UDB=(2,4)][side=top]:50,89_b" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_89_b" - switch ":udbswitch@[UDB=(2,3)][side=top]:44,89_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v44" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v44==>:udb@[UDB=(2,3)]:pld1:input_permute.input_9" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc1_main_1==>:udb@[UDB=(2,3)]:pld1:mc1.main_1" - term ":udb@[UDB=(2,3)]:pld1:mc1.main_1" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc0_main_0==>:udb@[UDB=(2,3)]:pld1:mc0.main_0" - term ":udb@[UDB=(2,3)]:pld1:mc0.main_0" - switch ":udbswitch@[UDB=(2,4)][side=top]:34,39" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_39_b" - switch ":udbswitch@[UDB=(2,3)][side=top]:21,39_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v21" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v21==>:udb@[UDB=(3,3)]:pld0:input_permute.input_10" - switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc0_main_0==>:udb@[UDB=(3,3)]:pld0:mc0.main_0" - term ":udb@[UDB=(3,3)]:pld0:mc0.main_0" - switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc1_main_0==>:udb@[UDB=(3,3)]:pld0:mc1.main_0" - term ":udb@[UDB=(3,3)]:pld0:mc1.main_0" - switch ":udbswitch@[UDB=(2,4)][side=top]:34,78" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_78_b" - switch ":udbswitch@[UDB=(2,3)][side=top]:18,78_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v18" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v18==>:udb@[UDB=(2,3)]:pld0:input_permute.input_9" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc0_main_0==>:udb@[UDB=(2,3)]:pld0:mc0.main_0" - term ":udb@[UDB=(2,3)]:pld0:mc0.main_0" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc1_main_0==>:udb@[UDB=(2,3)]:pld0:mc1.main_0" - term ":udb@[UDB=(2,3)]:pld0:mc1.main_0" - switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_78_f" - switch ":udbswitch@[UDB=(2,5)][side=top]:61,78_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v61" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v61==>:udb@[UDB=(3,5)]:pld1:input_permute.input_1" - switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc0_main_0==>:udb@[UDB=(3,5)]:pld1:mc0.main_0" - term ":udb@[UDB=(3,5)]:pld1:mc0.main_0" - switch ":udbswitch@[UDB=(2,4)][side=top]:2,6_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v2" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v2==>:udb@[UDB=(2,4)]:pld0:input_permute.input_1" - switch ":udb@[UDB=(2,4)]:pld0:input_permute.mc0_main_0==>:udb@[UDB=(2,4)]:pld0:mc0.main_0" - term ":udb@[UDB=(2,4)]:pld0:mc0.main_0" - switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc0_main_0==>:udb@[UDB=(2,4)]:pld1:mc0.main_0" - term ":udb@[UDB=(2,4)]:pld1:mc0.main_0" - switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc3_main_0==>:udb@[UDB=(2,4)]:pld1:mc3.main_0" - term ":udb@[UDB=(2,4)]:pld1:mc3.main_0" - switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc1_main_0==>:udb@[UDB=(2,4)]:pld1:mc1.main_0" - term ":udb@[UDB=(2,4)]:pld1:mc1.main_0" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc2_main_0==>:udb@[UDB=(2,3)]:pld0:mc2.main_0" - term ":udb@[UDB=(2,3)]:pld0:mc2.main_0" -end \SPIM:BSPIM:state_2\ -net \SPIM:BSPIM:tx_status_0\ - term ":udb@[UDB=(2,4)]:pld1:mc2.q" - switch ":udb@[UDB=(2,4)]:pld1:mc2.q==>:udb@[UDB=(2,4)]:pld1:output_permute0.q_2" - switch ":udb@[UDB=(2,4)]:pld1:output_permute0.output_0==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v38" - switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v38" - switch ":udbswitch@[UDB=(2,4)][side=top]:38,94" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_94_b" - switch ":udbswitch@[UDB=(2,3)][side=top]:88,94_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v88" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v88==>:udb@[UDB=(2,3)]:statusicell.status_0" - term ":udb@[UDB=(2,3)]:statusicell.status_0" -end \SPIM:BSPIM:tx_status_0\ -net \SPIM:BSPIM:count_1\ - term ":udb@[UDB=(2,4)]:count7cell.count_1" - switch ":udb@[UDB=(2,4)]:count7cell.count_1==>:udb@[UDB=(2,4)]:controlcell_control_1_permute.in_1" - switch ":udb@[UDB=(2,4)]:controlcell_control_1_permute.controlcell_control_1==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v106" - switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v106" - switch ":udbswitch@[UDB=(2,4)][side=top]:106,11" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_11_b" - switch ":udbswitch@[UDB=(2,3)][side=top]:52,11_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v52" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v52==>:udb@[UDB=(2,3)]:pld1:input_permute.input_5" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc3_main_3==>:udb@[UDB=(2,3)]:pld1:mc3.main_3" - term ":udb@[UDB=(2,3)]:pld1:mc3.main_3" - switch ":udbswitch@[UDB=(2,4)][side=top]:106,8" - switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_8_f" - switch ":udbswitch@[UDB=(2,5)][side=top]:2,8_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v2" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v2==>:udb@[UDB=(2,5)]:pld0:input_permute.input_1" - switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc0_main_3==>:udb@[UDB=(2,5)]:pld0:mc0.main_3" - term ":udb@[UDB=(2,5)]:pld0:mc0.main_3" - switch ":udbswitch@[UDB=(2,4)][side=top]:106,36" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_36_b" - switch ":udbswitch@[UDB=(2,3)][side=top]:4,36_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v4" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v4==>:udb@[UDB=(2,3)]:pld0:input_permute.input_2" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc0_main_6==>:udb@[UDB=(2,3)]:pld0:mc0.main_6" - term ":udb@[UDB=(2,3)]:pld0:mc0.main_6" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc1_main_6==>:udb@[UDB=(2,3)]:pld0:mc1.main_6" - term ":udb@[UDB=(2,3)]:pld0:mc1.main_6" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc0_main_6==>:udb@[UDB=(2,3)]:pld1:mc0.main_6" - term ":udb@[UDB=(2,3)]:pld1:mc0.main_6" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc2_main_3==>:udb@[UDB=(2,3)]:pld1:mc2.main_3" - term ":udb@[UDB=(2,3)]:pld1:mc2.main_3" - switch ":udbswitch@[UDB=(2,4)][side=top]:20,11_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v20" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v20==>:udb@[UDB=(2,4)]:pld0:input_permute.input_10" - switch ":udb@[UDB=(2,4)]:pld0:input_permute.mc0_main_7==>:udb@[UDB=(2,4)]:pld0:mc0.main_7" - term ":udb@[UDB=(2,4)]:pld0:mc0.main_7" - switch ":udbswitch@[UDB=(2,4)][side=top]:58,36_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v58" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v58==>:udb@[UDB=(2,4)]:pld1:input_permute.input_2" - switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc0_main_6==>:udb@[UDB=(2,4)]:pld1:mc0.main_6" - term ":udb@[UDB=(2,4)]:pld1:mc0.main_6" - switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc1_main_6==>:udb@[UDB=(2,4)]:pld1:mc1.main_6" - term ":udb@[UDB=(2,4)]:pld1:mc1.main_6" -end \SPIM:BSPIM:count_1\ + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc1_main_5==>:udb@[UDB=(2,5)]:pld0:mc1.main_5" + term ":udb@[UDB=(2,5)]:pld0:mc1.main_5" + switch ":udbswitch@[UDB=(2,4)][side=top]:108,14" + switch ":udbswitch@[UDB=(2,4)][side=top]:4,14_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v4" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v4==>:udb@[UDB=(2,4)]:pld0:input_permute.input_2" + switch ":udb@[UDB=(2,4)]:pld0:input_permute.mc0_main_6==>:udb@[UDB=(2,4)]:pld0:mc0.main_6" + term ":udb@[UDB=(2,4)]:pld0:mc0.main_6" +end \SPIM:BSPIM:count_2\ net \SPIM:BSPIM:dpcounter_one\ - term ":udb@[UDB=(2,3)]:pld1:mc3.q" - switch ":udb@[UDB=(2,3)]:pld1:mc3.q==>:udb@[UDB=(2,3)]:pld1:output_permute0.q_3" - switch ":udb@[UDB=(2,3)]:pld1:output_permute0.output_0==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v38" - switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v38" - switch ":udbswitch@[UDB=(2,3)][side=top]:38,51" - switch ":udbswitch@[UDB=(2,3)][side=top]:94,51_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v94" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v94==>:udb@[UDB=(2,3)]:statusicell.status_3" - term ":udb@[UDB=(2,3)]:statusicell.status_3" + term ":udb@[UDB=(2,5)]:pld1:mc3.q" + switch ":udb@[UDB=(2,5)]:pld1:mc3.q==>:udb@[UDB=(2,5)]:pld1:output_permute1.q_3" + switch ":udb@[UDB=(2,5)]:pld1:output_permute1.output_1==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v36" + switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v36" + switch ":udbswitch@[UDB=(2,5)][side=top]:36,35" + switch ":hvswitch@[UDB=(2,5)][side=left]:1,35_f" + switch ":hvswitch@[UDB=(2,5)][side=left]:1,1_b" + switch ":udbswitch@[UDB=(2,5)][side=top]:94,1_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v94" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v94==>:udb@[UDB=(2,5)]:statusicell.status_3" + term ":udb@[UDB=(2,5)]:statusicell.status_3" end \SPIM:BSPIM:dpcounter_one\ net \SPIM:BSPIM:state_1\ - term ":udb@[UDB=(2,3)]:pld0:mc1.q" - switch ":udb@[UDB=(2,3)]:pld0:mc1.q==>:udb@[UDB=(2,3)]:pld0:output_permute2.q_1" - switch ":udb@[UDB=(2,3)]:pld0:output_permute2.output_2==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v28" - switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v28" - switch ":udbswitch@[UDB=(2,3)][side=top]:28,40" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_40_f" - switch ":udbswitch@[UDB=(2,4)][side=top]:42,40_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v42" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v42==>:udb@[UDB=(2,4)]:pld1:input_permute.input_10" + term ":udb@[UDB=(2,5)]:pld0:mc1.q" + switch ":udb@[UDB=(2,5)]:pld0:mc1.q==>:udb@[UDB=(2,5)]:pld0:output_permute2.q_1" + switch ":udb@[UDB=(2,5)]:pld0:output_permute2.output_2==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v28" + switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v28" + switch ":udbswitch@[UDB=(2,5)][side=top]:28,9" + switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_9_b" + switch ":udbswitch@[UDB=(2,4)][side=top]:60,9_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v60" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v60==>:udb@[UDB=(2,4)]:pld1:input_permute.input_1" switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc2_main_1==>:udb@[UDB=(2,4)]:pld1:mc2.main_1" term ":udb@[UDB=(2,4)]:pld1:mc2.main_1" - switch ":udbswitch@[UDB=(2,4)][side=top]:74,40_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v74" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v74==>:udb@[UDB=(2,4)]:dp_wrapper:input_permute.ina_5" + switch ":udbswitch@[UDB=(2,4)][side=top]:60,33_b" + switch ":udbswitch@[UDB=(2,4)][side=top]:68,33_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v68" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v68==>:udb@[UDB=(2,4)]:dp_wrapper:input_permute.ina_2" switch ":udb@[UDB=(2,4)]:dp_wrapper:input_permute.cs_addr_1==>:udb@[UDB=(2,4)]:dp_wrapper:datapath.cs_addr_1" term ":udb@[UDB=(2,4)]:dp_wrapper:datapath.cs_addr_1" - switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_40_f" - switch ":udbswitch@[UDB=(2,5)][side=top]:51,40_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v51" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v51==>:udb@[UDB=(3,5)]:pld1:input_permute.input_6" - switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc0_main_1==>:udb@[UDB=(3,5)]:pld1:mc0.main_1" - term ":udb@[UDB=(3,5)]:pld1:mc0.main_1" + switch ":udbswitch@[UDB=(2,4)][side=top]:60,78_b" + switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_78_b" + switch ":udbswitch@[UDB=(2,3)][side=top]:61,78_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v61" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v61==>:udb@[UDB=(3,3)]:pld1:input_permute.input_1" + switch ":udb@[UDB=(3,3)]:pld1:input_permute.mc0_main_1==>:udb@[UDB=(3,3)]:pld1:mc0.main_1" + term ":udb@[UDB=(3,3)]:pld1:mc0.main_1" + switch ":udbswitch@[UDB=(2,4)][side=top]:60,30_b" + switch ":udbswitch@[UDB=(2,4)][side=top]:2,30_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v2" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v2==>:udb@[UDB=(2,4)]:pld0:input_permute.input_1" + switch ":udb@[UDB=(2,4)]:pld0:input_permute.mc0_main_1==>:udb@[UDB=(2,4)]:pld0:mc0.main_1" + term ":udb@[UDB=(2,4)]:pld0:mc0.main_1" switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc0_main_1==>:udb@[UDB=(2,4)]:pld1:mc0.main_1" term ":udb@[UDB=(2,4)]:pld1:mc0.main_1" switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc3_main_1==>:udb@[UDB=(2,4)]:pld1:mc3.main_1" term ":udb@[UDB=(2,4)]:pld1:mc3.main_1" switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc1_main_1==>:udb@[UDB=(2,4)]:pld1:mc1.main_1" term ":udb@[UDB=(2,4)]:pld1:mc1.main_1" - switch ":udbswitch@[UDB=(2,4)][side=top]:4,40_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v4" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v4==>:udb@[UDB=(2,4)]:pld0:input_permute.input_2" - switch ":udb@[UDB=(2,4)]:pld0:input_permute.mc0_main_1==>:udb@[UDB=(2,4)]:pld0:mc0.main_1" - term ":udb@[UDB=(2,4)]:pld0:mc0.main_1" - switch ":udbswitch@[UDB=(2,3)][side=top]:28,54" - switch ":udbswitch@[UDB=(2,3)][side=top]:12,54_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v12" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v12==>:udb@[UDB=(2,3)]:pld0:input_permute.input_6" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc0_main_1==>:udb@[UDB=(2,3)]:pld0:mc0.main_1" - term ":udb@[UDB=(2,3)]:pld0:mc0.main_1" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc1_main_1==>:udb@[UDB=(2,3)]:pld0:mc1.main_1" - term ":udb@[UDB=(2,3)]:pld0:mc1.main_1" - switch ":udbswitch@[UDB=(2,3)][side=top]:13,54_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v13" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v13==>:udb@[UDB=(3,3)]:pld0:input_permute.input_6" - switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc0_main_1==>:udb@[UDB=(3,3)]:pld0:mc0.main_1" - term ":udb@[UDB=(3,3)]:pld0:mc0.main_1" - switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc1_main_1==>:udb@[UDB=(3,3)]:pld0:mc1.main_1" - term ":udb@[UDB=(3,3)]:pld0:mc1.main_1" - switch ":udbswitch@[UDB=(2,3)][side=top]:42,40_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v42" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v42==>:udb@[UDB=(2,3)]:pld1:input_permute.input_10" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc1_main_2==>:udb@[UDB=(2,3)]:pld1:mc1.main_2" - term ":udb@[UDB=(2,3)]:pld1:mc1.main_2" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc0_main_1==>:udb@[UDB=(2,3)]:pld1:mc0.main_1" - term ":udb@[UDB=(2,3)]:pld1:mc0.main_1" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc2_main_1==>:udb@[UDB=(2,3)]:pld0:mc2.main_1" - term ":udb@[UDB=(2,3)]:pld0:mc2.main_1" + switch ":hvswitch@[UDB=(2,5)][side=left]:11,9_f" + switch ":hvswitch@[UDB=(2,5)][side=left]:11,76_b" + switch ":udbswitch@[UDB=(2,5)][side=top]:7,76_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v7" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v7==>:udb@[UDB=(3,5)]:pld0:input_permute.input_3" + switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc1_main_1==>:udb@[UDB=(3,5)]:pld0:mc1.main_1" + term ":udb@[UDB=(3,5)]:pld0:mc1.main_1" + switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc0_main_2==>:udb@[UDB=(3,5)]:pld0:mc0.main_2" + term ":udb@[UDB=(3,5)]:pld0:mc0.main_2" + switch ":udbswitch@[UDB=(2,5)][side=top]:28,57" + switch ":udbswitch@[UDB=(2,5)][side=top]:12,57_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v12" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v12==>:udb@[UDB=(2,5)]:pld0:input_permute.input_6" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc0_main_1==>:udb@[UDB=(2,5)]:pld0:mc0.main_1" + term ":udb@[UDB=(2,5)]:pld0:mc0.main_1" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc1_main_1==>:udb@[UDB=(2,5)]:pld0:mc1.main_1" + term ":udb@[UDB=(2,5)]:pld0:mc1.main_1" + switch ":udbswitch@[UDB=(2,5)][side=top]:60,9_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v60" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v60==>:udb@[UDB=(2,5)]:pld1:input_permute.input_1" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc1_main_1==>:udb@[UDB=(2,5)]:pld1:mc1.main_1" + term ":udb@[UDB=(2,5)]:pld1:mc1.main_1" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc0_main_1==>:udb@[UDB=(2,5)]:pld1:mc0.main_1" + term ":udb@[UDB=(2,5)]:pld1:mc0.main_1" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc2_main_1==>:udb@[UDB=(2,5)]:pld0:mc2.main_1" + term ":udb@[UDB=(2,5)]:pld0:mc2.main_1" end \SPIM:BSPIM:state_1\ -net \SPIM:BSPIM:tx_status_1\ - term ":udb@[UDB=(2,4)]:dp_wrapper:datapath.f0_blk_stat_comb" - switch ":udb@[UDB=(2,4)]:dp_wrapper:datapath.f0_blk_stat_comb==>:udb@[UDB=(2,4)]:dp_wrapper:output_permute.f0_blk_stat_comb" - switch ":udb@[UDB=(2,4)]:dp_wrapper:output_permute.outs_4==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v84" - switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v84" - switch ":udbswitch@[UDB=(2,4)][side=top]:84,35" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_35_b" - switch ":udbswitch@[UDB=(2,3)][side=top]:10,35_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v10" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v10==>:udb@[UDB=(2,3)]:pld0:input_permute.input_5" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc1_main_8==>:udb@[UDB=(2,3)]:pld0:mc1.main_8" - term ":udb@[UDB=(2,3)]:pld0:mc1.main_8" - switch ":udbswitch@[UDB=(2,4)][side=top]:84,55" - switch ":udbswitch@[UDB=(2,4)][side=top]:44,55_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v44" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v44==>:udb@[UDB=(2,4)]:pld1:input_permute.input_9" - switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc0_main_8==>:udb@[UDB=(2,4)]:pld1:mc0.main_8" - term ":udb@[UDB=(2,4)]:pld1:mc0.main_8" - switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc3_main_3==>:udb@[UDB=(2,4)]:pld1:mc3.main_3" - term ":udb@[UDB=(2,4)]:pld1:mc3.main_3" - switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc1_main_8==>:udb@[UDB=(2,4)]:pld1:mc1.main_8" - term ":udb@[UDB=(2,4)]:pld1:mc1.main_8" - switch ":udbswitch@[UDB=(2,3)][side=top]:10,63_b" - switch ":udbswitch@[UDB=(2,3)][side=top]:90,63_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v90" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v90==>:udb@[UDB=(2,3)]:statusicell.status_1" - term ":udb@[UDB=(2,3)]:statusicell.status_1" -end \SPIM:BSPIM:tx_status_1\ +net \SPIM:BSPIM:tx_status_0\ + term ":udb@[UDB=(2,4)]:pld1:mc2.q" + switch ":udb@[UDB=(2,4)]:pld1:mc2.q==>:udb@[UDB=(2,4)]:pld1:output_permute3.q_2" + switch ":udb@[UDB=(2,4)]:pld1:output_permute3.output_3==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v32" + switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v32" + switch ":udbswitch@[UDB=(2,4)][side=top]:32,69" + switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_69_f" + switch ":udbswitch@[UDB=(2,5)][side=top]:88,69_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v88" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v88==>:udb@[UDB=(2,5)]:statusicell.status_0" + term ":udb@[UDB=(2,5)]:statusicell.status_0" +end \SPIM:BSPIM:tx_status_0\ +net \SPIM:BSPIM:count_0\ + term ":udb@[UDB=(2,4)]:count7cell.count_0" + switch ":udb@[UDB=(2,4)]:count7cell.count_0==>:udb@[UDB=(2,4)]:controlcell_control_0_permute.in_1" + switch ":udb@[UDB=(2,4)]:controlcell_control_0_permute.controlcell_control_0==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v104" + switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v104" + switch ":udbswitch@[UDB=(2,4)][side=top]:104,45" + switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_45_f" + switch ":udbswitch@[UDB=(2,5)][side=top]:56,45_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v56" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v56==>:udb@[UDB=(2,5)]:pld1:input_permute.input_3" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc3_main_4==>:udb@[UDB=(2,5)]:pld1:mc3.main_4" + term ":udb@[UDB=(2,5)]:pld1:mc3.main_4" + switch ":udbswitch@[UDB=(2,4)][side=top]:104,42" + switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_42_b" + switch ":udbswitch@[UDB=(2,3)][side=top]:22,42_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v22" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v22==>:udb@[UDB=(2,3)]:pld0:input_permute.input_11" + switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc0_main_4==>:udb@[UDB=(2,3)]:pld0:mc0.main_4" + term ":udb@[UDB=(2,3)]:pld0:mc0.main_4" + switch ":udbswitch@[UDB=(2,5)][side=top]:56,18_b" + switch ":udbswitch@[UDB=(2,5)][side=top]:6,18_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v6" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v6==>:udb@[UDB=(2,5)]:pld0:input_permute.input_3" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc0_main_7==>:udb@[UDB=(2,5)]:pld0:mc0.main_7" + term ":udb@[UDB=(2,5)]:pld0:mc0.main_7" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc1_main_7==>:udb@[UDB=(2,5)]:pld0:mc1.main_7" + term ":udb@[UDB=(2,5)]:pld0:mc1.main_7" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc0_main_7==>:udb@[UDB=(2,5)]:pld1:mc0.main_7" + term ":udb@[UDB=(2,5)]:pld1:mc0.main_7" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc2_main_4==>:udb@[UDB=(2,5)]:pld1:mc2.main_4" + term ":udb@[UDB=(2,5)]:pld1:mc2.main_4" + switch ":udbswitch@[UDB=(2,4)][side=top]:56,42_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v56" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v56==>:udb@[UDB=(2,4)]:pld1:input_permute.input_3" + switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc0_main_7==>:udb@[UDB=(2,4)]:pld1:mc0.main_7" + term ":udb@[UDB=(2,4)]:pld1:mc0.main_7" + switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc1_main_7==>:udb@[UDB=(2,4)]:pld1:mc1.main_7" + term ":udb@[UDB=(2,4)]:pld1:mc1.main_7" + switch ":udbswitch@[UDB=(2,4)][side=top]:22,42_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v22" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v22==>:udb@[UDB=(2,4)]:pld0:input_permute.input_11" + switch ":udb@[UDB=(2,4)]:pld0:input_permute.mc0_main_8==>:udb@[UDB=(2,4)]:pld0:mc0.main_8" + term ":udb@[UDB=(2,4)]:pld0:mc0.main_8" +end \SPIM:BSPIM:count_0\ net \SPIM:BSPIM:count_3\ term ":udb@[UDB=(2,4)]:count7cell.count_3" switch ":udb@[UDB=(2,4)]:count7cell.count_3==>:udb@[UDB=(2,4)]:controlcell_control_3_permute.in_1" switch ":udb@[UDB=(2,4)]:controlcell_control_3_permute.controlcell_control_3==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v110" switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v110" - switch ":udbswitch@[UDB=(2,4)][side=top]:110,91" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_91_b" - switch ":udbswitch@[UDB=(2,3)][side=top]:48,91_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v48" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v48==>:udb@[UDB=(2,3)]:pld1:input_permute.input_7" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc3_main_1==>:udb@[UDB=(2,3)]:pld1:mc3.main_1" - term ":udb@[UDB=(2,3)]:pld1:mc3.main_1" - switch ":udbswitch@[UDB=(2,4)][side=top]:110,51" - switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_51_f" - switch ":udbswitch@[UDB=(2,5)][side=top]:14,51_f" + switch ":udbswitch@[UDB=(2,4)][side=top]:110,23" + switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_23_f" + switch ":udbswitch@[UDB=(2,5)][side=top]:48,23_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v48" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v48==>:udb@[UDB=(2,5)]:pld1:input_permute.input_7" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc3_main_1==>:udb@[UDB=(2,5)]:pld1:mc3.main_1" + term ":udb@[UDB=(2,5)]:pld1:mc3.main_1" + switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_23_b" + switch ":udbswitch@[UDB=(2,3)][side=top]:16,23_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v16" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v16==>:udb@[UDB=(2,3)]:pld0:input_permute.input_8" + switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc0_main_1==>:udb@[UDB=(2,3)]:pld0:mc0.main_1" + term ":udb@[UDB=(2,3)]:pld0:mc0.main_1" + switch ":udbswitch@[UDB=(2,5)][side=top]:48,19_b" + switch ":udbswitch@[UDB=(2,5)][side=top]:14,19_f" switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v14" switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v14==>:udb@[UDB=(2,5)]:pld0:input_permute.input_7" - switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc0_main_1==>:udb@[UDB=(2,5)]:pld0:mc0.main_1" - term ":udb@[UDB=(2,5)]:pld0:mc0.main_1" - switch ":udbswitch@[UDB=(2,3)][side=top]:0,91_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v0" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v0==>:udb@[UDB=(2,3)]:pld0:input_permute.input_0" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc0_main_4==>:udb@[UDB=(2,3)]:pld0:mc0.main_4" - term ":udb@[UDB=(2,3)]:pld0:mc0.main_4" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc1_main_4==>:udb@[UDB=(2,3)]:pld0:mc1.main_4" - term ":udb@[UDB=(2,3)]:pld0:mc1.main_4" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc0_main_4==>:udb@[UDB=(2,3)]:pld1:mc0.main_4" - term ":udb@[UDB=(2,3)]:pld1:mc0.main_4" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc2_main_1==>:udb@[UDB=(2,3)]:pld1:mc2.main_1" - term ":udb@[UDB=(2,3)]:pld1:mc2.main_1" - switch ":udbswitch@[UDB=(2,4)][side=top]:54,51_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v54" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v54==>:udb@[UDB=(2,4)]:pld1:input_permute.input_4" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc0_main_4==>:udb@[UDB=(2,5)]:pld0:mc0.main_4" + term ":udb@[UDB=(2,5)]:pld0:mc0.main_4" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc1_main_4==>:udb@[UDB=(2,5)]:pld0:mc1.main_4" + term ":udb@[UDB=(2,5)]:pld0:mc1.main_4" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc0_main_4==>:udb@[UDB=(2,5)]:pld1:mc0.main_4" + term ":udb@[UDB=(2,5)]:pld1:mc0.main_4" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc2_main_1==>:udb@[UDB=(2,5)]:pld1:mc2.main_1" + term ":udb@[UDB=(2,5)]:pld1:mc2.main_1" + switch ":udbswitch@[UDB=(2,4)][side=top]:16,23_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v16" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v16==>:udb@[UDB=(2,4)]:pld0:input_permute.input_8" + switch ":udb@[UDB=(2,4)]:pld0:input_permute.mc0_main_5==>:udb@[UDB=(2,4)]:pld0:mc0.main_5" + term ":udb@[UDB=(2,4)]:pld0:mc0.main_5" + switch ":udbswitch@[UDB=(2,4)][side=top]:48,23_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v48" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v48==>:udb@[UDB=(2,4)]:pld1:input_permute.input_7" switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc0_main_4==>:udb@[UDB=(2,4)]:pld1:mc0.main_4" term ":udb@[UDB=(2,4)]:pld1:mc0.main_4" switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc1_main_4==>:udb@[UDB=(2,4)]:pld1:mc1.main_4" term ":udb@[UDB=(2,4)]:pld1:mc1.main_4" - switch ":udbswitch@[UDB=(2,4)][side=top]:14,51_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v14" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v14==>:udb@[UDB=(2,4)]:pld0:input_permute.input_7" - switch ":udb@[UDB=(2,4)]:pld0:input_permute.mc0_main_5==>:udb@[UDB=(2,4)]:pld0:mc0.main_5" - term ":udb@[UDB=(2,4)]:pld0:mc0.main_5" end \SPIM:BSPIM:count_3\ net \SPIM:BSPIM:count_4\ term ":udb@[UDB=(2,4)]:count7cell.count_4" @@ -319,37 +370,37 @@ net \SPIM:BSPIM:count_4\ switch ":udb@[UDB=(2,4)]:controlcell_control_4_permute.controlcell_control_4==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v112" switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v112" switch ":udbswitch@[UDB=(2,4)][side=top]:112,52" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_52_b" - switch ":udbswitch@[UDB=(2,3)][side=top]:46,52_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v46" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v46==>:udb@[UDB=(2,3)]:pld1:input_permute.input_8" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc3_main_0==>:udb@[UDB=(2,3)]:pld1:mc3.main_0" - term ":udb@[UDB=(2,3)]:pld1:mc3.main_0" - switch ":udbswitch@[UDB=(2,4)][side=top]:112,76" - switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_76_f" - switch ":udbswitch@[UDB=(2,5)][side=top]:16,76_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v16" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v16==>:udb@[UDB=(2,5)]:pld0:input_permute.input_8" - switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc0_main_0==>:udb@[UDB=(2,5)]:pld0:mc0.main_0" - term ":udb@[UDB=(2,5)]:pld0:mc0.main_0" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_76_b" - switch ":udbswitch@[UDB=(2,3)][side=top]:16,76_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v16" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v16==>:udb@[UDB=(2,3)]:pld0:input_permute.input_8" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc0_main_3==>:udb@[UDB=(2,3)]:pld0:mc0.main_3" - term ":udb@[UDB=(2,3)]:pld0:mc0.main_3" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc1_main_3==>:udb@[UDB=(2,3)]:pld0:mc1.main_3" - term ":udb@[UDB=(2,3)]:pld0:mc1.main_3" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc0_main_3==>:udb@[UDB=(2,3)]:pld1:mc0.main_3" - term ":udb@[UDB=(2,3)]:pld1:mc0.main_3" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc2_main_0==>:udb@[UDB=(2,3)]:pld1:mc2.main_0" - term ":udb@[UDB=(2,3)]:pld1:mc2.main_0" - switch ":udbswitch@[UDB=(2,4)][side=top]:16,76_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v16" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v16==>:udb@[UDB=(2,4)]:pld0:input_permute.input_8" + switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_52_f" + switch ":udbswitch@[UDB=(2,5)][side=top]:46,52_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v46" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v46==>:udb@[UDB=(2,5)]:pld1:input_permute.input_8" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc3_main_0==>:udb@[UDB=(2,5)]:pld1:mc3.main_0" + term ":udb@[UDB=(2,5)]:pld1:mc3.main_0" + switch ":udbswitch@[UDB=(2,4)][side=top]:46,52_f" + switch ":udbswitch@[UDB=(2,4)][side=top]:46,28_b" + switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_28_b" + switch ":udbswitch@[UDB=(2,3)][side=top]:0,28_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v0" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v0==>:udb@[UDB=(2,3)]:pld0:input_permute.input_0" + switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc0_main_0==>:udb@[UDB=(2,3)]:pld0:mc0.main_0" + term ":udb@[UDB=(2,3)]:pld0:mc0.main_0" + switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_28_f" + switch ":udbswitch@[UDB=(2,5)][side=top]:0,28_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v0" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v0==>:udb@[UDB=(2,5)]:pld0:input_permute.input_0" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc0_main_3==>:udb@[UDB=(2,5)]:pld0:mc0.main_3" + term ":udb@[UDB=(2,5)]:pld0:mc0.main_3" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc1_main_3==>:udb@[UDB=(2,5)]:pld0:mc1.main_3" + term ":udb@[UDB=(2,5)]:pld0:mc1.main_3" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc0_main_3==>:udb@[UDB=(2,5)]:pld1:mc0.main_3" + term ":udb@[UDB=(2,5)]:pld1:mc0.main_3" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc2_main_0==>:udb@[UDB=(2,5)]:pld1:mc2.main_0" + term ":udb@[UDB=(2,5)]:pld1:mc2.main_0" + switch ":udbswitch@[UDB=(2,4)][side=top]:0,28_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v0" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v0==>:udb@[UDB=(2,4)]:pld0:input_permute.input_0" switch ":udb@[UDB=(2,4)]:pld0:input_permute.mc0_main_4==>:udb@[UDB=(2,4)]:pld0:mc0.main_4" term ":udb@[UDB=(2,4)]:pld0:mc0.main_4" - switch ":udbswitch@[UDB=(2,4)][side=top]:46,52_f" switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v46" switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v46==>:udb@[UDB=(2,4)]:pld1:input_permute.input_8" switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc0_main_3==>:udb@[UDB=(2,4)]:pld1:mc0.main_3" @@ -357,535 +408,659 @@ net \SPIM:BSPIM:count_4\ switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc1_main_3==>:udb@[UDB=(2,4)]:pld1:mc1.main_3" term ":udb@[UDB=(2,4)]:pld1:mc1.main_3" end \SPIM:BSPIM:count_4\ -net \SPIM:BSPIM:count_0\ - term ":udb@[UDB=(2,4)]:count7cell.count_0" - switch ":udb@[UDB=(2,4)]:count7cell.count_0==>:udb@[UDB=(2,4)]:controlcell_control_0_permute.in_1" - switch ":udb@[UDB=(2,4)]:controlcell_control_0_permute.controlcell_control_0==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v104" - switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v104" - switch ":udbswitch@[UDB=(2,4)][side=top]:104,42" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_42_b" - switch ":udbswitch@[UDB=(2,3)][side=top]:56,42_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v56" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v56==>:udb@[UDB=(2,3)]:pld1:input_permute.input_3" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc3_main_4==>:udb@[UDB=(2,3)]:pld1:mc3.main_4" - term ":udb@[UDB=(2,3)]:pld1:mc3.main_4" - switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_42_f" - switch ":udbswitch@[UDB=(2,5)][side=top]:6,42_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v6" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v6==>:udb@[UDB=(2,5)]:pld0:input_permute.input_3" - switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc0_main_4==>:udb@[UDB=(2,5)]:pld0:mc0.main_4" - term ":udb@[UDB=(2,5)]:pld0:mc0.main_4" - switch ":udbswitch@[UDB=(2,3)][side=top]:22,42_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v22" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v22==>:udb@[UDB=(2,3)]:pld0:input_permute.input_11" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc0_main_7==>:udb@[UDB=(2,3)]:pld0:mc0.main_7" - term ":udb@[UDB=(2,3)]:pld0:mc0.main_7" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc1_main_7==>:udb@[UDB=(2,3)]:pld0:mc1.main_7" - term ":udb@[UDB=(2,3)]:pld0:mc1.main_7" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc0_main_7==>:udb@[UDB=(2,3)]:pld1:mc0.main_7" - term ":udb@[UDB=(2,3)]:pld1:mc0.main_7" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc2_main_4==>:udb@[UDB=(2,3)]:pld1:mc2.main_4" - term ":udb@[UDB=(2,3)]:pld1:mc2.main_4" - switch ":udbswitch@[UDB=(2,4)][side=top]:22,42_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v22" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v22==>:udb@[UDB=(2,4)]:pld0:input_permute.input_11" - switch ":udb@[UDB=(2,4)]:pld0:input_permute.mc0_main_8==>:udb@[UDB=(2,4)]:pld0:mc0.main_8" - term ":udb@[UDB=(2,4)]:pld0:mc0.main_8" - switch ":udbswitch@[UDB=(2,4)][side=top]:56,42_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v56" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v56==>:udb@[UDB=(2,4)]:pld1:input_permute.input_3" - switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc0_main_7==>:udb@[UDB=(2,4)]:pld1:mc0.main_7" - term ":udb@[UDB=(2,4)]:pld1:mc0.main_7" - switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc1_main_7==>:udb@[UDB=(2,4)]:pld1:mc1.main_7" - term ":udb@[UDB=(2,4)]:pld1:mc1.main_7" -end \SPIM:BSPIM:count_0\ -net \SPIM:BSPIM:count_2\ - term ":udb@[UDB=(2,4)]:count7cell.count_2" - switch ":udb@[UDB=(2,4)]:count7cell.count_2==>:udb@[UDB=(2,4)]:controlcell_control_2_permute.in_1" - switch ":udb@[UDB=(2,4)]:controlcell_control_2_permute.controlcell_control_2==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v108" - switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v108" - switch ":udbswitch@[UDB=(2,4)][side=top]:108,30" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_30_b" - switch ":udbswitch@[UDB=(2,3)][side=top]:60,30_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v60" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v60==>:udb@[UDB=(2,3)]:pld1:input_permute.input_1" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc3_main_2==>:udb@[UDB=(2,3)]:pld1:mc3.main_2" - term ":udb@[UDB=(2,3)]:pld1:mc3.main_2" - switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_30_f" - switch ":udbswitch@[UDB=(2,5)][side=top]:18,30_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v18" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v18==>:udb@[UDB=(2,5)]:pld0:input_permute.input_9" - switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc0_main_2==>:udb@[UDB=(2,5)]:pld0:mc0.main_2" - term ":udb@[UDB=(2,5)]:pld0:mc0.main_2" - switch ":udbswitch@[UDB=(2,3)][side=top]:2,30_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v2" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v2==>:udb@[UDB=(2,3)]:pld0:input_permute.input_1" +net \SPIM:BSPIM:count_1\ + term ":udb@[UDB=(2,4)]:count7cell.count_1" + switch ":udb@[UDB=(2,4)]:count7cell.count_1==>:udb@[UDB=(2,4)]:controlcell_control_1_permute.in_1" + switch ":udb@[UDB=(2,4)]:controlcell_control_1_permute.controlcell_control_1==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v106" + switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v106" + switch ":udbswitch@[UDB=(2,4)][side=top]:106,8" + switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_8_f" + switch ":udbswitch@[UDB=(2,5)][side=top]:2,8_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v2" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v2==>:udb@[UDB=(2,5)]:pld0:input_permute.input_1" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc0_main_6==>:udb@[UDB=(2,5)]:pld0:mc0.main_6" + term ":udb@[UDB=(2,5)]:pld0:mc0.main_6" + switch ":udbswitch@[UDB=(2,4)][side=top]:106,11" + switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_11_f" + switch ":udbswitch@[UDB=(2,5)][side=top]:52,11_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v52" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v52==>:udb@[UDB=(2,5)]:pld1:input_permute.input_5" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc3_main_3==>:udb@[UDB=(2,5)]:pld1:mc3.main_3" + term ":udb@[UDB=(2,5)]:pld1:mc3.main_3" + switch ":udbswitch@[UDB=(2,4)][side=top]:106,36" + switch ":udbswitch@[UDB=(2,4)][side=top]:58,36_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v58" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v58==>:udb@[UDB=(2,4)]:pld1:input_permute.input_2" + switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc0_main_6==>:udb@[UDB=(2,4)]:pld1:mc0.main_6" + term ":udb@[UDB=(2,4)]:pld1:mc0.main_6" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc0_main_6==>:udb@[UDB=(2,5)]:pld1:mc0.main_6" + term ":udb@[UDB=(2,5)]:pld1:mc0.main_6" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc2_main_3==>:udb@[UDB=(2,5)]:pld1:mc2.main_3" + term ":udb@[UDB=(2,5)]:pld1:mc2.main_3" + switch ":udbswitch@[UDB=(2,4)][side=top]:20,11_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v20" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v20==>:udb@[UDB=(2,4)]:pld0:input_permute.input_10" + switch ":udb@[UDB=(2,4)]:pld0:input_permute.mc0_main_7==>:udb@[UDB=(2,4)]:pld0:mc0.main_7" + term ":udb@[UDB=(2,4)]:pld0:mc0.main_7" + switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_11_b" + switch ":udbswitch@[UDB=(2,3)][side=top]:20,11_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v20" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v20==>:udb@[UDB=(2,3)]:pld0:input_permute.input_10" + switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc0_main_3==>:udb@[UDB=(2,3)]:pld0:mc0.main_3" + term ":udb@[UDB=(2,3)]:pld0:mc0.main_3" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc1_main_6==>:udb@[UDB=(2,5)]:pld0:mc1.main_6" + term ":udb@[UDB=(2,5)]:pld0:mc1.main_6" + switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc1_main_6==>:udb@[UDB=(2,4)]:pld1:mc1.main_6" + term ":udb@[UDB=(2,4)]:pld1:mc1.main_6" +end \SPIM:BSPIM:count_1\ +net \SPIM:BSPIM:rx_status_4\ + term ":udb@[UDB=(2,4)]:dp_wrapper:datapath.f1_blk_stat_comb" + switch ":udb@[UDB=(2,4)]:dp_wrapper:datapath.f1_blk_stat_comb==>:udb@[UDB=(2,4)]:dp_wrapper:output_permute.f1_blk_stat_comb" + switch ":udb@[UDB=(2,4)]:dp_wrapper:output_permute.outs_1==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v78" + switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v78" + switch ":udbswitch@[UDB=(2,4)][side=top]:78,75" + switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_75_b" + switch ":udbswitch@[UDB=(2,3)][side=top]:14,75_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v14" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v14==>:udb@[UDB=(2,3)]:pld0:input_permute.input_7" switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc0_main_5==>:udb@[UDB=(2,3)]:pld0:mc0.main_5" term ":udb@[UDB=(2,3)]:pld0:mc0.main_5" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc1_main_5==>:udb@[UDB=(2,3)]:pld0:mc1.main_5" - term ":udb@[UDB=(2,3)]:pld0:mc1.main_5" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc0_main_5==>:udb@[UDB=(2,3)]:pld1:mc0.main_5" - term ":udb@[UDB=(2,3)]:pld1:mc0.main_5" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc2_main_2==>:udb@[UDB=(2,3)]:pld1:mc2.main_2" - term ":udb@[UDB=(2,3)]:pld1:mc2.main_2" - switch ":udbswitch@[UDB=(2,4)][side=top]:18,30_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v18" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v18==>:udb@[UDB=(2,4)]:pld0:input_permute.input_9" - switch ":udb@[UDB=(2,4)]:pld0:input_permute.mc0_main_6==>:udb@[UDB=(2,4)]:pld0:mc0.main_6" - term ":udb@[UDB=(2,4)]:pld0:mc0.main_6" - switch ":udbswitch@[UDB=(2,4)][side=top]:60,30_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v60" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v60==>:udb@[UDB=(2,4)]:pld1:input_permute.input_1" - switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc0_main_5==>:udb@[UDB=(2,4)]:pld1:mc0.main_5" - term ":udb@[UDB=(2,4)]:pld1:mc0.main_5" - switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc1_main_5==>:udb@[UDB=(2,4)]:pld1:mc1.main_5" - term ":udb@[UDB=(2,4)]:pld1:mc1.main_5" -end \SPIM:BSPIM:count_2\ + switch ":udbswitch@[UDB=(2,4)][side=top]:97,75_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v97" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v97==>:udb@[UDB=(3,4)]:statusicell.status_4" + term ":udb@[UDB=(3,4)]:statusicell.status_4" +end \SPIM:BSPIM:rx_status_4\ +net \SPIM:BSPIM:rx_status_6\ + term ":udb@[UDB=(2,3)]:pld0:mc0.q" + switch ":udb@[UDB=(2,3)]:pld0:mc0.q==>:udb@[UDB=(2,3)]:pld0:output_permute1.q_0" + switch ":udb@[UDB=(2,3)]:pld0:output_permute1.output_1==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v26" + switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v26" + switch ":udbswitch@[UDB=(2,3)][side=top]:26,34" + switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_34_f" + switch ":udbswitch@[UDB=(2,4)][side=top]:101,34_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v101" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v101==>:udb@[UDB=(3,4)]:statusicell.status_6" + term ":udb@[UDB=(3,4)]:statusicell.status_6" +end \SPIM:BSPIM:rx_status_6\ +net \SPIM:BSPIM:state_2\ + term ":udb@[UDB=(2,4)]:pld1:mc1.q" + switch ":udb@[UDB=(2,4)]:pld1:mc1.q==>:udb@[UDB=(2,4)]:pld1:output_permute2.q_1" + switch ":udb@[UDB=(2,4)]:pld1:output_permute2.output_2==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v34" + switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v34" + switch ":udbswitch@[UDB=(2,4)][side=top]:34,41" + switch ":udbswitch@[UDB=(2,4)][side=top]:50,41_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v50" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v50==>:udb@[UDB=(2,4)]:pld1:input_permute.input_6" + switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc2_main_0==>:udb@[UDB=(2,4)]:pld1:mc2.main_0" + term ":udb@[UDB=(2,4)]:pld1:mc2.main_0" + switch ":udbswitch@[UDB=(2,4)][side=top]:66,41_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v66" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v66==>:udb@[UDB=(2,4)]:dp_wrapper:input_permute.ina_1" + switch ":udb@[UDB=(2,4)]:dp_wrapper:input_permute.cs_addr_2==>:udb@[UDB=(2,4)]:dp_wrapper:datapath.cs_addr_2" + term ":udb@[UDB=(2,4)]:dp_wrapper:datapath.cs_addr_2" + switch ":udbswitch@[UDB=(2,4)][side=top]:66,10_b" + switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_10_f" + switch ":udbswitch@[UDB=(2,5)][side=top]:42,10_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v42" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v42==>:udb@[UDB=(2,5)]:pld1:input_permute.input_10" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc1_main_0==>:udb@[UDB=(2,5)]:pld1:mc1.main_0" + term ":udb@[UDB=(2,5)]:pld1:mc1.main_0" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc0_main_0==>:udb@[UDB=(2,5)]:pld1:mc0.main_0" + term ":udb@[UDB=(2,5)]:pld1:mc0.main_0" + switch ":udbswitch@[UDB=(2,5)][side=top]:10,10_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v10" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v10==>:udb@[UDB=(2,5)]:pld0:input_permute.input_5" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc0_main_0==>:udb@[UDB=(2,5)]:pld0:mc0.main_0" + term ":udb@[UDB=(2,5)]:pld0:mc0.main_0" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc1_main_0==>:udb@[UDB=(2,5)]:pld0:mc1.main_0" + term ":udb@[UDB=(2,5)]:pld0:mc1.main_0" + switch ":hvswitch@[UDB=(2,4)][side=left]:8,10_f" + switch ":hvswitch@[UDB=(2,4)][side=left]:8,19_b" + switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_19_b" + switch ":udbswitch@[UDB=(2,3)][side=top]:47,19_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v47" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v47==>:udb@[UDB=(3,3)]:pld1:input_permute.input_8" + switch ":udb@[UDB=(3,3)]:pld1:input_permute.mc0_main_0==>:udb@[UDB=(3,3)]:pld1:mc0.main_0" + term ":udb@[UDB=(3,3)]:pld1:mc0.main_0" + switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc0_main_0==>:udb@[UDB=(2,4)]:pld1:mc0.main_0" + term ":udb@[UDB=(2,4)]:pld1:mc0.main_0" + switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc3_main_0==>:udb@[UDB=(2,4)]:pld1:mc3.main_0" + term ":udb@[UDB=(2,4)]:pld1:mc3.main_0" + switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc1_main_0==>:udb@[UDB=(2,4)]:pld1:mc1.main_0" + term ":udb@[UDB=(2,4)]:pld1:mc1.main_0" + switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_41_f" + switch ":udbswitch@[UDB=(2,5)][side=top]:13,41_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v13" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v13==>:udb@[UDB=(3,5)]:pld0:input_permute.input_6" + switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc1_main_0==>:udb@[UDB=(3,5)]:pld0:mc1.main_0" + term ":udb@[UDB=(3,5)]:pld0:mc1.main_0" + switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc0_main_1==>:udb@[UDB=(3,5)]:pld0:mc0.main_1" + term ":udb@[UDB=(3,5)]:pld0:mc0.main_1" + switch ":udbswitch@[UDB=(2,4)][side=top]:14,19_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v14" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v14==>:udb@[UDB=(2,4)]:pld0:input_permute.input_7" + switch ":udb@[UDB=(2,4)]:pld0:input_permute.mc0_main_0==>:udb@[UDB=(2,4)]:pld0:mc0.main_0" + term ":udb@[UDB=(2,4)]:pld0:mc0.main_0" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc2_main_0==>:udb@[UDB=(2,5)]:pld0:mc2.main_0" + term ":udb@[UDB=(2,5)]:pld0:mc2.main_0" +end \SPIM:BSPIM:state_2\ +net \SPIM:BSPIM:mosi_from_dp\ + term ":udb@[UDB=(2,4)]:dp_wrapper:datapath.so_comb" + switch ":udb@[UDB=(2,4)]:dp_wrapper:datapath.so_comb==>:udb@[UDB=(2,4)]:dp_wrapper:output_permute.so_comb" + switch ":udb@[UDB=(2,4)]:dp_wrapper:output_permute.outs_4==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v84" + switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v84" + switch ":udbswitch@[UDB=(2,4)][side=top]:84,59" + switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_59_b" + switch ":udbswitch@[UDB=(2,3)][side=top]:53,59_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v53" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v53==>:udb@[UDB=(3,3)]:pld1:input_permute.input_5" + switch ":udb@[UDB=(3,3)]:pld1:input_permute.mc0_main_3==>:udb@[UDB=(3,3)]:pld1:mc0.main_3" + term ":udb@[UDB=(3,3)]:pld1:mc0.main_3" + switch ":udbswitch@[UDB=(2,4)][side=top]:84,81" + switch ":udbswitch@[UDB=(2,4)][side=top]:12,81_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v12" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v12==>:udb@[UDB=(2,4)]:pld0:input_permute.input_6" + switch ":udb@[UDB=(2,4)]:pld0:input_permute.mc0_main_3==>:udb@[UDB=(2,4)]:pld0:mc0.main_3" + term ":udb@[UDB=(2,4)]:pld0:mc0.main_3" + switch ":udbswitch@[UDB=(2,4)][side=top]:84,55" + switch ":udbswitch@[UDB=(2,4)][side=top]:21,55_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v21" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v21==>:udb@[UDB=(3,4)]:pld0:input_permute.input_10" + switch ":udb@[UDB=(3,4)]:pld0:input_permute.mc0_main_0==>:udb@[UDB=(3,4)]:pld0:mc0.main_0" + term ":udb@[UDB=(3,4)]:pld0:mc0.main_0" +end \SPIM:BSPIM:mosi_from_dp\ +net \SPIM:BSPIM:tx_status_1\ + term ":udb@[UDB=(2,4)]:dp_wrapper:datapath.f0_blk_stat_comb" + switch ":udb@[UDB=(2,4)]:dp_wrapper:datapath.f0_blk_stat_comb==>:udb@[UDB=(2,4)]:dp_wrapper:output_permute.f0_blk_stat_comb" + switch ":udb@[UDB=(2,4)]:dp_wrapper:output_permute.outs_2==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v80" + switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v80" + switch ":udbswitch@[UDB=(2,4)][side=top]:80,67" + switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_67_f" + switch ":udbswitch@[UDB=(2,5)][side=top]:16,67_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v16" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v16==>:udb@[UDB=(2,5)]:pld0:input_permute.input_8" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc1_main_8==>:udb@[UDB=(2,5)]:pld0:mc1.main_8" + term ":udb@[UDB=(2,5)]:pld0:mc1.main_8" + switch ":udbswitch@[UDB=(2,4)][side=top]:40,67_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v40" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v40==>:udb@[UDB=(2,4)]:pld1:input_permute.input_11" + switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc0_main_8==>:udb@[UDB=(2,4)]:pld1:mc0.main_8" + term ":udb@[UDB=(2,4)]:pld1:mc0.main_8" + switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc3_main_3==>:udb@[UDB=(2,4)]:pld1:mc3.main_3" + term ":udb@[UDB=(2,4)]:pld1:mc3.main_3" + switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc1_main_8==>:udb@[UDB=(2,4)]:pld1:mc1.main_8" + term ":udb@[UDB=(2,4)]:pld1:mc1.main_8" + switch ":udbswitch@[UDB=(2,5)][side=top]:16,26_b" + switch ":hvswitch@[UDB=(2,4)][side=left]:20,26_f" + switch ":hvswitch@[UDB=(2,4)][side=left]:20,40_b" + switch ":udbswitch@[UDB=(2,5)][side=top]:90,40_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v90" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v90==>:udb@[UDB=(2,5)]:statusicell.status_1" + term ":udb@[UDB=(2,5)]:statusicell.status_1" +end \SPIM:BSPIM:tx_status_1\ net \SPIM:BSPIM:state_0\ term ":udb@[UDB=(2,4)]:pld1:mc3.q" switch ":udb@[UDB=(2,4)]:pld1:mc3.q==>:udb@[UDB=(2,4)]:pld1:output_permute1.q_3" switch ":udb@[UDB=(2,4)]:pld1:output_permute1.output_1==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v36" - switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v36" - switch ":udbswitch@[UDB=(2,4)][side=top]:36,57" - switch ":udbswitch@[UDB=(2,4)][side=top]:52,57_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v52" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v52==>:udb@[UDB=(2,4)]:pld1:input_permute.input_5" - switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc2_main_2==>:udb@[UDB=(2,4)]:pld1:mc2.main_2" - term ":udb@[UDB=(2,4)]:pld1:mc2.main_2" - switch ":udbswitch@[UDB=(2,4)][side=top]:36,12" - switch ":udbswitch@[UDB=(2,4)][side=top]:68,12_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v68" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v68==>:udb@[UDB=(2,4)]:dp_wrapper:input_permute.ina_2" - switch ":udb@[UDB=(2,4)]:dp_wrapper:input_permute.cs_addr_0==>:udb@[UDB=(2,4)]:dp_wrapper:datapath.cs_addr_0" - term ":udb@[UDB=(2,4)]:dp_wrapper:datapath.cs_addr_0" - switch ":udbswitch@[UDB=(2,4)][side=top]:36,88" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_88_b" - switch ":udbswitch@[UDB=(2,3)][side=top]:3,88_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v3" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v3==>:udb@[UDB=(3,3)]:pld0:input_permute.input_1" - switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc0_main_2==>:udb@[UDB=(3,3)]:pld0:mc0.main_2" - term ":udb@[UDB=(3,3)]:pld0:mc0.main_2" - switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc1_main_2==>:udb@[UDB=(3,3)]:pld0:mc1.main_2" - term ":udb@[UDB=(3,3)]:pld0:mc1.main_2" - switch ":udbswitch@[UDB=(2,3)][side=top]:20,88_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v20" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v20==>:udb@[UDB=(2,3)]:pld0:input_permute.input_10" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc0_main_2==>:udb@[UDB=(2,3)]:pld0:mc0.main_2" - term ":udb@[UDB=(2,3)]:pld0:mc0.main_2" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc1_main_2==>:udb@[UDB=(2,3)]:pld0:mc1.main_2" - term ":udb@[UDB=(2,3)]:pld0:mc1.main_2" + switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v36" + switch ":udbswitch@[UDB=(2,4)][side=top]:36,35" + switch ":udbswitch@[UDB=(2,4)][side=top]:52,35_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v52" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v52==>:udb@[UDB=(2,4)]:pld1:input_permute.input_5" + switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc2_main_2==>:udb@[UDB=(2,4)]:pld1:mc2.main_2" + term ":udb@[UDB=(2,4)]:pld1:mc2.main_2" switch ":udbswitch@[UDB=(2,4)][side=top]:36,84" + switch ":udbswitch@[UDB=(2,4)][side=top]:74,84_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v74" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v74==>:udb@[UDB=(2,4)]:dp_wrapper:input_permute.ina_5" + switch ":udb@[UDB=(2,4)]:dp_wrapper:input_permute.cs_addr_0==>:udb@[UDB=(2,4)]:dp_wrapper:datapath.cs_addr_0" + term ":udb@[UDB=(2,4)]:dp_wrapper:datapath.cs_addr_0" + switch ":udbswitch@[UDB=(2,4)][side=top]:74,37_b" + switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_37_f" + switch ":udbswitch@[UDB=(2,5)][side=top]:5,37_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v5" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v5==>:udb@[UDB=(3,5)]:pld0:input_permute.input_2" + switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc1_main_2==>:udb@[UDB=(3,5)]:pld0:mc1.main_2" + term ":udb@[UDB=(3,5)]:pld0:mc1.main_2" + switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc0_main_3==>:udb@[UDB=(3,5)]:pld0:mc0.main_3" + term ":udb@[UDB=(3,5)]:pld0:mc0.main_3" + switch ":udbswitch@[UDB=(2,4)][side=top]:52,83_b" + switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_83_b" + switch ":udbswitch@[UDB=(2,3)][side=top]:43,83_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v43" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v43==>:udb@[UDB=(3,3)]:pld1:input_permute.input_10" + switch ":udb@[UDB=(3,3)]:pld1:input_permute.mc0_main_2==>:udb@[UDB=(3,3)]:pld1:mc0.main_2" + term ":udb@[UDB=(3,3)]:pld1:mc0.main_2" switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_84_f" - switch ":udbswitch@[UDB=(2,5)][side=top]:59,84_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v59" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v59==>:udb@[UDB=(3,5)]:pld1:input_permute.input_2" - switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc0_main_2==>:udb@[UDB=(3,5)]:pld1:mc0.main_2" - term ":udb@[UDB=(3,5)]:pld1:mc0.main_2" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_84_b" - switch ":udbswitch@[UDB=(2,3)][side=top]:58,84_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v58" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v58==>:udb@[UDB=(2,3)]:pld1:input_permute.input_2" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc1_main_3==>:udb@[UDB=(2,3)]:pld1:mc1.main_3" - term ":udb@[UDB=(2,3)]:pld1:mc1.main_3" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc0_main_2==>:udb@[UDB=(2,3)]:pld1:mc0.main_2" - term ":udb@[UDB=(2,3)]:pld1:mc0.main_2" + switch ":udbswitch@[UDB=(2,5)][side=top]:20,84_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v20" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v20==>:udb@[UDB=(2,5)]:pld0:input_permute.input_10" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc0_main_2==>:udb@[UDB=(2,5)]:pld0:mc0.main_2" + term ":udb@[UDB=(2,5)]:pld0:mc0.main_2" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc1_main_2==>:udb@[UDB=(2,5)]:pld0:mc1.main_2" + term ":udb@[UDB=(2,5)]:pld0:mc1.main_2" + switch ":udbswitch@[UDB=(2,5)][side=top]:58,84_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v58" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v58==>:udb@[UDB=(2,5)]:pld1:input_permute.input_2" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc1_main_2==>:udb@[UDB=(2,5)]:pld1:mc1.main_2" + term ":udb@[UDB=(2,5)]:pld1:mc1.main_2" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc0_main_2==>:udb@[UDB=(2,5)]:pld1:mc0.main_2" + term ":udb@[UDB=(2,5)]:pld1:mc0.main_2" switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc0_main_2==>:udb@[UDB=(2,4)]:pld1:mc0.main_2" term ":udb@[UDB=(2,4)]:pld1:mc0.main_2" switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc3_main_2==>:udb@[UDB=(2,4)]:pld1:mc3.main_2" term ":udb@[UDB=(2,4)]:pld1:mc3.main_2" switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc1_main_2==>:udb@[UDB=(2,4)]:pld1:mc1.main_2" term ":udb@[UDB=(2,4)]:pld1:mc1.main_2" - switch ":udbswitch@[UDB=(2,4)][side=top]:12,57_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v12" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v12==>:udb@[UDB=(2,4)]:pld0:input_permute.input_6" + switch ":udbswitch@[UDB=(2,4)][side=top]:10,35_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v10" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v10==>:udb@[UDB=(2,4)]:pld0:input_permute.input_5" switch ":udb@[UDB=(2,4)]:pld0:input_permute.mc0_main_2==>:udb@[UDB=(2,4)]:pld0:mc0.main_2" term ":udb@[UDB=(2,4)]:pld0:mc0.main_2" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc2_main_2==>:udb@[UDB=(2,3)]:pld0:mc2.main_2" - term ":udb@[UDB=(2,3)]:pld0:mc2.main_2" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc2_main_2==>:udb@[UDB=(2,5)]:pld0:mc2.main_2" + term ":udb@[UDB=(2,5)]:pld0:mc2.main_2" end \SPIM:BSPIM:state_0\ -net \UART_1:BUART:tx_state_0\ - term ":udb@[UDB=(2,5)]:pld0:mc1.q" - switch ":udb@[UDB=(2,5)]:pld0:mc1.q==>:udb@[UDB=(2,5)]:pld0:output_permute0.q_1" - switch ":udb@[UDB=(2,5)]:pld0:output_permute0.output_0==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v24" - switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v24" - switch ":udbswitch@[UDB=(2,5)][side=top]:24,66" - switch ":udbswitch@[UDB=(2,5)][side=top]:57,66_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v57" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v57==>:udb@[UDB=(3,5)]:pld1:input_permute.input_3" - switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc1_main_1==>:udb@[UDB=(3,5)]:pld1:mc1.main_1" - term ":udb@[UDB=(3,5)]:pld1:mc1.main_1" - switch ":udbswitch@[UDB=(2,5)][side=top]:8,66_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v8" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v8==>:udb@[UDB=(2,5)]:pld0:input_permute.input_4" - switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc3_main_1==>:udb@[UDB=(2,5)]:pld0:mc3.main_1" - term ":udb@[UDB=(2,5)]:pld0:mc3.main_1" - switch ":udbswitch@[UDB=(2,5)][side=top]:57,70_b" - switch ":udbswitch@[UDB=(2,5)][side=top]:71,70_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v71" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v71==>:udb@[UDB=(3,5)]:dp_wrapper:input_permute.ina_3" - switch ":udb@[UDB=(3,5)]:dp_wrapper:input_permute.cs_addr_1==>:udb@[UDB=(3,5)]:dp_wrapper:datapath.cs_addr_1" - term ":udb@[UDB=(3,5)]:dp_wrapper:datapath.cs_addr_1" - switch ":udbswitch@[UDB=(2,5)][side=top]:1,70_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v1" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v1==>:udb@[UDB=(3,5)]:pld0:input_permute.input_0" - switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc1_main_1==>:udb@[UDB=(3,5)]:pld0:mc1.main_1" - term ":udb@[UDB=(3,5)]:pld0:mc1.main_1" - switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc0_main_2==>:udb@[UDB=(3,5)]:pld0:mc0.main_2" - term ":udb@[UDB=(3,5)]:pld0:mc0.main_2" - switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc1_main_1==>:udb@[UDB=(2,5)]:pld0:mc1.main_1" - term ":udb@[UDB=(2,5)]:pld0:mc1.main_1" - switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc2_main_1==>:udb@[UDB=(2,5)]:pld0:mc2.main_1" - term ":udb@[UDB=(2,5)]:pld0:mc2.main_1" -end \UART_1:BUART:tx_state_0\ -net \UART_1:BUART:counter_load_not\ - term ":udb@[UDB=(3,5)]:pld1:mc1.q" - switch ":udb@[UDB=(3,5)]:pld1:mc1.q==>:udb@[UDB=(3,5)]:pld1:output_permute3.q_1" - switch ":udb@[UDB=(3,5)]:pld1:output_permute3.output_3==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v33" - switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v33" - switch ":udbswitch@[UDB=(2,5)][side=top]:33,73" - switch ":udbswitch@[UDB=(2,5)][side=top]:70,73_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v70" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v70==>:udb@[UDB=(2,5)]:dp_wrapper:input_permute.ina_3" - switch ":udb@[UDB=(2,5)]:dp_wrapper:input_permute.cs_addr_0==>:udb@[UDB=(2,5)]:dp_wrapper:datapath.cs_addr_0" - term ":udb@[UDB=(2,5)]:dp_wrapper:datapath.cs_addr_0" -end \UART_1:BUART:counter_load_not\ -net \SPIM:BSPIM:load_cond\ - term ":udb@[UDB=(2,3)]:pld1:mc0.q" - switch ":udb@[UDB=(2,3)]:pld1:mc0.q==>:udb@[UDB=(2,3)]:pld1:output_permute1.q_0" - switch ":udb@[UDB=(2,3)]:pld1:output_permute1.output_1==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v36" - switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v36" - switch ":udbswitch@[UDB=(2,3)][side=top]:36,33" - switch ":hvswitch@[UDB=(2,2)][side=left]:19,33_f" - switch ":hvswitch@[UDB=(2,2)][side=left]:19,46_b" - switch ":udbswitch@[UDB=(2,3)][side=top]:40,46_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v40" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v40==>:udb@[UDB=(2,3)]:pld1:input_permute.input_11" - switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc0_main_8==>:udb@[UDB=(2,3)]:pld1:mc0.main_8" - term ":udb@[UDB=(2,3)]:pld1:mc0.main_8" -end \SPIM:BSPIM:load_cond\ net \UART_1:BUART:tx_state_1\ - term ":udb@[UDB=(2,5)]:pld0:mc2.q" - switch ":udb@[UDB=(2,5)]:pld0:mc2.q==>:udb@[UDB=(2,5)]:pld0:output_permute2.q_2" - switch ":udb@[UDB=(2,5)]:pld0:output_permute2.output_2==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v28" - switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v28" - switch ":udbswitch@[UDB=(2,5)][side=top]:28,89" - switch ":udbswitch@[UDB=(2,5)][side=top]:45,89_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v45" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v45==>:udb@[UDB=(3,5)]:pld1:input_permute.input_9" - switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc1_main_0==>:udb@[UDB=(3,5)]:pld1:mc1.main_0" - term ":udb@[UDB=(3,5)]:pld1:mc1.main_0" - switch ":udbswitch@[UDB=(2,5)][side=top]:28,54" - switch ":udbswitch@[UDB=(2,5)][side=top]:12,54_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v12" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v12==>:udb@[UDB=(2,5)]:pld0:input_permute.input_6" - switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc3_main_0==>:udb@[UDB=(2,5)]:pld0:mc3.main_0" - term ":udb@[UDB=(2,5)]:pld0:mc3.main_0" - switch ":udbswitch@[UDB=(2,5)][side=top]:28,57" - switch ":udbswitch@[UDB=(2,5)][side=top]:75,57_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v75" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v75==>:udb@[UDB=(3,5)]:dp_wrapper:input_permute.ina_5" - switch ":udb@[UDB=(3,5)]:dp_wrapper:input_permute.cs_addr_2==>:udb@[UDB=(3,5)]:dp_wrapper:datapath.cs_addr_2" - term ":udb@[UDB=(3,5)]:dp_wrapper:datapath.cs_addr_2" - switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc1_main_0==>:udb@[UDB=(2,5)]:pld0:mc1.main_0" - term ":udb@[UDB=(2,5)]:pld0:mc1.main_0" - switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc2_main_0==>:udb@[UDB=(2,5)]:pld0:mc2.main_0" - term ":udb@[UDB=(2,5)]:pld0:mc2.main_0" - switch ":udbswitch@[UDB=(2,5)][side=top]:28,37" - switch ":udbswitch@[UDB=(2,5)][side=top]:5,37_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v5" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v5==>:udb@[UDB=(3,5)]:pld0:input_permute.input_2" - switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc1_main_0==>:udb@[UDB=(3,5)]:pld0:mc1.main_0" - term ":udb@[UDB=(3,5)]:pld0:mc1.main_0" - switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc0_main_1==>:udb@[UDB=(3,5)]:pld0:mc0.main_1" - term ":udb@[UDB=(3,5)]:pld0:mc0.main_1" + term ":udb@[UDB=(3,0)]:pld1:mc0.q" + switch ":udb@[UDB=(3,0)]:pld1:mc0.q==>:udb@[UDB=(3,0)]:pld1:output_permute3.q_0" + switch ":udb@[UDB=(3,0)]:pld1:output_permute3.output_3==>Stub-:udbswitch@[UDB=(2,0)][side=top]:v33" + switch "OStub-:udbswitch@[UDB=(2,0)][side=top]:v33" + switch ":udbswitch@[UDB=(2,0)][side=top]:33,73" + switch ":hvswitch@[UDB=(2,0)][side=left]:hseg_73_f" + switch ":hvswitch@[UDB=(2,1)][side=left]:hseg_73_f" + switch ":hvswitch@[UDB=(2,2)][side=left]:hseg_73_f" + switch ":udbswitch@[UDB=(2,3)][side=top]:55,73_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v55" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v55==>:udb@[UDB=(3,3)]:pld1:input_permute.input_4" + switch ":udb@[UDB=(3,3)]:pld1:input_permute.mc1_main_0==>:udb@[UDB=(3,3)]:pld1:mc1.main_0" + term ":udb@[UDB=(3,3)]:pld1:mc1.main_0" + switch ":udbswitch@[UDB=(2,3)][side=top]:6,73_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v6" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v6==>:udb@[UDB=(2,3)]:pld0:input_permute.input_3" + switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc3_main_0==>:udb@[UDB=(2,3)]:pld0:mc3.main_0" + term ":udb@[UDB=(2,3)]:pld0:mc3.main_0" + switch ":udbswitch@[UDB=(2,3)][side=top]:70,73_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v70" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v70==>:udb@[UDB=(2,3)]:dp_wrapper:input_permute.ina_3" + switch ":udb@[UDB=(2,3)]:dp_wrapper:input_permute.cs_addr_2==>:udb@[UDB=(2,3)]:dp_wrapper:datapath.cs_addr_2" + term ":udb@[UDB=(2,3)]:dp_wrapper:datapath.cs_addr_2" + switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc1_main_0==>:udb@[UDB=(2,3)]:pld0:mc1.main_0" + term ":udb@[UDB=(2,3)]:pld0:mc1.main_0" + switch ":udbswitch@[UDB=(2,3)][side=top]:7,73_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v7" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v7==>:udb@[UDB=(3,3)]:pld0:input_permute.input_3" + switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc1_main_0==>:udb@[UDB=(3,3)]:pld0:mc1.main_0" + term ":udb@[UDB=(3,3)]:pld0:mc1.main_0" + switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc0_main_1==>:udb@[UDB=(3,3)]:pld0:mc0.main_1" + term ":udb@[UDB=(3,3)]:pld0:mc0.main_1" + switch ":udbswitch@[UDB=(2,0)][side=top]:55,73_f" + switch "IStub-:udbswitch@[UDB=(2,0)][side=top]:v55" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v55==>:udb@[UDB=(3,0)]:pld1:input_permute.input_4" + switch ":udb@[UDB=(3,0)]:pld1:input_permute.mc0_main_0==>:udb@[UDB=(3,0)]:pld1:mc0.main_0" + term ":udb@[UDB=(3,0)]:pld1:mc0.main_0" end \UART_1:BUART:tx_state_1\ +net \UART_1:BUART:counter_load_not\ + term ":udb@[UDB=(3,3)]:pld1:mc1.q" + switch ":udb@[UDB=(3,3)]:pld1:mc1.q==>:udb@[UDB=(3,3)]:pld1:output_permute1.q_1" + switch ":udb@[UDB=(3,3)]:pld1:output_permute1.output_1==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v37" + switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v37" + switch ":udbswitch@[UDB=(2,3)][side=top]:37,88" + switch ":udbswitch@[UDB=(2,3)][side=top]:67,88_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v67" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v67==>:udb@[UDB=(3,3)]:dp_wrapper:input_permute.ina_1" + switch ":udb@[UDB=(3,3)]:dp_wrapper:input_permute.cs_addr_0==>:udb@[UDB=(3,3)]:dp_wrapper:datapath.cs_addr_0" + term ":udb@[UDB=(3,3)]:dp_wrapper:datapath.cs_addr_0" +end \UART_1:BUART:counter_load_not\ +net \UART_1:BUART:tx_state_0\ + term ":udb@[UDB=(2,3)]:pld0:mc1.q" + switch ":udb@[UDB=(2,3)]:pld0:mc1.q==>:udb@[UDB=(2,3)]:pld0:output_permute0.q_1" + switch ":udb@[UDB=(2,3)]:pld0:output_permute0.output_0==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v24" + switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v24" + switch ":udbswitch@[UDB=(2,3)][side=top]:24,77" + switch ":udbswitch@[UDB=(2,3)][side=top]:41,77_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v41" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v41==>:udb@[UDB=(3,3)]:pld1:input_permute.input_11" + switch ":udb@[UDB=(3,3)]:pld1:input_permute.mc1_main_1==>:udb@[UDB=(3,3)]:pld1:mc1.main_1" + term ":udb@[UDB=(3,3)]:pld1:mc1.main_1" + switch ":udbswitch@[UDB=(2,3)][side=top]:41,5_b" + switch ":udbswitch@[UDB=(2,3)][side=top]:72,5_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v72" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v72==>:udb@[UDB=(2,3)]:dp_wrapper:input_permute.ina_4" + switch ":udb@[UDB=(2,3)]:dp_wrapper:input_permute.cs_addr_1==>:udb@[UDB=(2,3)]:dp_wrapper:datapath.cs_addr_1" + term ":udb@[UDB=(2,3)]:dp_wrapper:datapath.cs_addr_1" + switch ":udbswitch@[UDB=(2,3)][side=top]:24,66" + switch ":udbswitch@[UDB=(2,3)][side=top]:8,66_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v8" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v8==>:udb@[UDB=(2,3)]:pld0:input_permute.input_4" + switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc3_main_1==>:udb@[UDB=(2,3)]:pld0:mc3.main_1" + term ":udb@[UDB=(2,3)]:pld0:mc3.main_1" + switch ":hvswitch@[UDB=(2,2)][side=left]:hseg_77_b" + switch ":hvswitch@[UDB=(2,1)][side=left]:hseg_77_b" + switch ":hvswitch@[UDB=(2,0)][side=left]:hseg_77_b" + switch ":udbswitch@[UDB=(2,0)][side=top]:41,77_f" + switch "IStub-:udbswitch@[UDB=(2,0)][side=top]:v41" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v41==>:udb@[UDB=(3,0)]:pld1:input_permute.input_11" + switch ":udb@[UDB=(3,0)]:pld1:input_permute.mc0_main_1==>:udb@[UDB=(3,0)]:pld1:mc0.main_1" + term ":udb@[UDB=(3,0)]:pld1:mc0.main_1" + switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc1_main_1==>:udb@[UDB=(2,3)]:pld0:mc1.main_1" + term ":udb@[UDB=(2,3)]:pld0:mc1.main_1" + switch ":udbswitch@[UDB=(2,3)][side=top]:9,66_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v9" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v9==>:udb@[UDB=(3,3)]:pld0:input_permute.input_4" + switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc1_main_1==>:udb@[UDB=(3,3)]:pld0:mc1.main_1" + term ":udb@[UDB=(3,3)]:pld0:mc1.main_1" + switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc0_main_2==>:udb@[UDB=(3,3)]:pld0:mc0.main_2" + term ":udb@[UDB=(3,3)]:pld0:mc0.main_2" +end \UART_1:BUART:tx_state_0\ net \UART_1:BUART:tx_bitclk\ - term ":udb@[UDB=(2,5)]:pld1:mc0.q" - switch ":udb@[UDB=(2,5)]:pld1:mc0.q==>:udb@[UDB=(2,5)]:pld1:output_permute1.q_0" - switch ":udb@[UDB=(2,5)]:pld1:output_permute1.output_1==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v36" - switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v36" - switch ":udbswitch@[UDB=(2,5)][side=top]:36,59" - switch ":udbswitch@[UDB=(2,5)][side=top]:53,59_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v53" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v53==>:udb@[UDB=(3,5)]:pld1:input_permute.input_5" - switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc1_main_3==>:udb@[UDB=(3,5)]:pld1:mc1.main_3" - term ":udb@[UDB=(3,5)]:pld1:mc1.main_3" - switch ":udbswitch@[UDB=(2,5)][side=top]:20,59_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v20" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v20==>:udb@[UDB=(2,5)]:pld0:input_permute.input_10" - switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc3_main_4==>:udb@[UDB=(2,5)]:pld0:mc3.main_4" - term ":udb@[UDB=(2,5)]:pld0:mc3.main_4" - switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc1_main_4==>:udb@[UDB=(2,5)]:pld0:mc1.main_4" - term ":udb@[UDB=(2,5)]:pld0:mc1.main_4" - switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc2_main_3==>:udb@[UDB=(2,5)]:pld0:mc2.main_3" - term ":udb@[UDB=(2,5)]:pld0:mc2.main_3" - switch ":udbswitch@[UDB=(2,5)][side=top]:36,88" - switch ":udbswitch@[UDB=(2,5)][side=top]:21,88_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v21" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v21==>:udb@[UDB=(3,5)]:pld0:input_permute.input_10" - switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc1_main_3==>:udb@[UDB=(3,5)]:pld0:mc1.main_3" - term ":udb@[UDB=(3,5)]:pld0:mc1.main_3" - switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc0_main_5==>:udb@[UDB=(3,5)]:pld0:mc0.main_5" - term ":udb@[UDB=(3,5)]:pld0:mc0.main_5" + term ":udb@[UDB=(2,3)]:pld1:mc0.q" + switch ":udb@[UDB=(2,3)]:pld1:mc0.q==>:udb@[UDB=(2,3)]:pld1:output_permute2.q_0" + switch ":udb@[UDB=(2,3)]:pld1:output_permute2.output_2==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v34" + switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v34" + switch ":udbswitch@[UDB=(2,3)][side=top]:34,65" + switch ":udbswitch@[UDB=(2,3)][side=top]:51,65_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v51" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v51==>:udb@[UDB=(3,3)]:pld1:input_permute.input_6" + switch ":udb@[UDB=(3,3)]:pld1:input_permute.mc1_main_3==>:udb@[UDB=(3,3)]:pld1:mc1.main_3" + term ":udb@[UDB=(3,3)]:pld1:mc1.main_3" + switch ":udbswitch@[UDB=(2,3)][side=top]:2,65_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v2" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v2==>:udb@[UDB=(2,3)]:pld0:input_permute.input_1" + switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc3_main_4==>:udb@[UDB=(2,3)]:pld0:mc3.main_4" + term ":udb@[UDB=(2,3)]:pld0:mc3.main_4" + switch ":hvswitch@[UDB=(2,2)][side=left]:hseg_65_b" + switch ":hvswitch@[UDB=(2,1)][side=left]:hseg_65_b" + switch ":hvswitch@[UDB=(2,0)][side=left]:hseg_65_b" + switch ":udbswitch@[UDB=(2,0)][side=top]:51,65_f" + switch "IStub-:udbswitch@[UDB=(2,0)][side=top]:v51" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v51==>:udb@[UDB=(3,0)]:pld1:input_permute.input_6" + switch ":udb@[UDB=(3,0)]:pld1:input_permute.mc0_main_3==>:udb@[UDB=(3,0)]:pld1:mc0.main_3" + term ":udb@[UDB=(3,0)]:pld1:mc0.main_3" + switch ":udbswitch@[UDB=(2,3)][side=top]:34,82" + switch ":udbswitch@[UDB=(2,3)][side=top]:19,82_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v19" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v19==>:udb@[UDB=(3,3)]:pld0:input_permute.input_9" + switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc1_main_3==>:udb@[UDB=(3,3)]:pld0:mc1.main_3" + term ":udb@[UDB=(3,3)]:pld0:mc1.main_3" + switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc0_main_5==>:udb@[UDB=(3,3)]:pld0:mc0.main_5" + term ":udb@[UDB=(3,3)]:pld0:mc0.main_5" + switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc1_main_4==>:udb@[UDB=(2,3)]:pld0:mc1.main_4" + term ":udb@[UDB=(2,3)]:pld0:mc1.main_4" end \UART_1:BUART:tx_bitclk\ net \UART_1:BUART:tx_state_2\ - term ":udb@[UDB=(3,5)]:pld0:mc1.q" - switch ":udb@[UDB=(3,5)]:pld0:mc1.q==>:udb@[UDB=(3,5)]:pld0:output_permute1.q_1" - switch ":udb@[UDB=(3,5)]:pld0:output_permute1.output_1==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v27" - switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v27" - switch ":udbswitch@[UDB=(2,5)][side=top]:27,83" - switch ":udbswitch@[UDB=(2,5)][side=top]:43,83_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v43" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v43==>:udb@[UDB=(3,5)]:pld1:input_permute.input_10" - switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc1_main_2==>:udb@[UDB=(3,5)]:pld1:mc1.main_2" - term ":udb@[UDB=(3,5)]:pld1:mc1.main_2" - switch ":udbswitch@[UDB=(2,5)][side=top]:4,83_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v4" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v4==>:udb@[UDB=(2,5)]:pld0:input_permute.input_2" - switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc3_main_3==>:udb@[UDB=(2,5)]:pld0:mc3.main_3" - term ":udb@[UDB=(2,5)]:pld0:mc3.main_3" - switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc1_main_3==>:udb@[UDB=(2,5)]:pld0:mc1.main_3" - term ":udb@[UDB=(2,5)]:pld0:mc1.main_3" - switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc2_main_2==>:udb@[UDB=(2,5)]:pld0:mc2.main_2" - term ":udb@[UDB=(2,5)]:pld0:mc2.main_2" - switch ":udbswitch@[UDB=(2,5)][side=top]:27,62" - switch ":udbswitch@[UDB=(2,5)][side=top]:11,62_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v11" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v11==>:udb@[UDB=(3,5)]:pld0:input_permute.input_5" - switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc1_main_2==>:udb@[UDB=(3,5)]:pld0:mc1.main_2" - term ":udb@[UDB=(3,5)]:pld0:mc1.main_2" - switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc0_main_4==>:udb@[UDB=(3,5)]:pld0:mc0.main_4" - term ":udb@[UDB=(3,5)]:pld0:mc0.main_4" + term ":udb@[UDB=(3,3)]:pld0:mc1.q" + switch ":udb@[UDB=(3,3)]:pld0:mc1.q==>:udb@[UDB=(3,3)]:pld0:output_permute2.q_1" + switch ":udb@[UDB=(3,3)]:pld0:output_permute2.output_2==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v29" + switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v29" + switch ":udbswitch@[UDB=(2,3)][side=top]:29,87" + switch ":udbswitch@[UDB=(2,3)][side=top]:45,87_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v45" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v45==>:udb@[UDB=(3,3)]:pld1:input_permute.input_9" + switch ":udb@[UDB=(3,3)]:pld1:input_permute.mc1_main_2==>:udb@[UDB=(3,3)]:pld1:mc1.main_2" + term ":udb@[UDB=(3,3)]:pld1:mc1.main_2" + switch ":udbswitch@[UDB=(2,3)][side=top]:10,87_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v10" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v10==>:udb@[UDB=(2,3)]:pld0:input_permute.input_5" + switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc3_main_3==>:udb@[UDB=(2,3)]:pld0:mc3.main_3" + term ":udb@[UDB=(2,3)]:pld0:mc3.main_3" + switch ":hvswitch@[UDB=(2,2)][side=left]:hseg_87_b" + switch ":hvswitch@[UDB=(2,1)][side=left]:hseg_87_b" + switch ":hvswitch@[UDB=(2,0)][side=left]:hseg_87_b" + switch ":udbswitch@[UDB=(2,0)][side=top]:45,87_f" + switch "IStub-:udbswitch@[UDB=(2,0)][side=top]:v45" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v45==>:udb@[UDB=(3,0)]:pld1:input_permute.input_9" + switch ":udb@[UDB=(3,0)]:pld1:input_permute.mc0_main_2==>:udb@[UDB=(3,0)]:pld1:mc0.main_2" + term ":udb@[UDB=(3,0)]:pld1:mc0.main_2" + switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc1_main_3==>:udb@[UDB=(2,3)]:pld0:mc1.main_3" + term ":udb@[UDB=(2,3)]:pld0:mc1.main_3" + switch ":udbswitch@[UDB=(2,3)][side=top]:29,6" + switch ":udbswitch@[UDB=(2,3)][side=top]:3,6_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v3" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v3==>:udb@[UDB=(3,3)]:pld0:input_permute.input_1" + switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc1_main_2==>:udb@[UDB=(3,3)]:pld0:mc1.main_2" + term ":udb@[UDB=(3,3)]:pld0:mc1.main_2" + switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc0_main_4==>:udb@[UDB=(3,3)]:pld0:mc0.main_4" + term ":udb@[UDB=(3,3)]:pld0:mc0.main_4" end \UART_1:BUART:tx_state_2\ -net \UART_1:BUART:tx_bitclk_dp\ - term ":udb@[UDB=(2,5)]:dp_wrapper:datapath.cl0_comb" - switch ":udb@[UDB=(2,5)]:dp_wrapper:datapath.cl0_comb==>:udb@[UDB=(2,5)]:dp_wrapper:output_permute.cl0_comb" - switch ":udb@[UDB=(2,5)]:dp_wrapper:output_permute.outs_4==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v84" - switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v84" - switch ":udbswitch@[UDB=(2,5)][side=top]:84,9" - switch ":udbswitch@[UDB=(2,5)][side=top]:60,9_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v60" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v60==>:udb@[UDB=(2,5)]:pld1:input_permute.input_1" - switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc1_main_0==>:udb@[UDB=(2,5)]:pld1:mc1.main_0" - term ":udb@[UDB=(2,5)]:pld1:mc1.main_0" - switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc0_main_0==>:udb@[UDB=(2,5)]:pld1:mc0.main_0" - term ":udb@[UDB=(2,5)]:pld1:mc0.main_0" -end \UART_1:BUART:tx_bitclk_dp\ net \UART_1:BUART:tx_bitclk_enable_pre\ - term ":udb@[UDB=(2,5)]:pld1:mc1.q" - switch ":udb@[UDB=(2,5)]:pld1:mc1.q==>:udb@[UDB=(2,5)]:pld1:output_permute0.q_1" - switch ":udb@[UDB=(2,5)]:pld1:output_permute0.output_0==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v38" - switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v38" - switch ":udbswitch@[UDB=(2,5)][side=top]:38,90" - switch ":udbswitch@[UDB=(2,5)][side=top]:73,90_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v73" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v73==>:udb@[UDB=(3,5)]:dp_wrapper:input_permute.ina_4" - switch ":udb@[UDB=(3,5)]:dp_wrapper:input_permute.cs_addr_0==>:udb@[UDB=(3,5)]:dp_wrapper:datapath.cs_addr_0" - term ":udb@[UDB=(3,5)]:dp_wrapper:datapath.cs_addr_0" -end \UART_1:BUART:tx_bitclk_enable_pre\ -net Net_479 term ":udb@[UDB=(2,3)]:pld1:mc1.q" - switch ":udb@[UDB=(2,3)]:pld1:mc1.q==>:udb@[UDB=(2,3)]:pld1:output_permute2.q_1" - switch ":udb@[UDB=(2,3)]:pld1:output_permute2.output_2==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v34" - switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v34" - switch ":udbswitch@[UDB=(2,3)][side=top]:34,41" - switch ":udbswitch@[UDB=(2,3)][side=top]:50,41_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v50" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v50==>:udb@[UDB=(2,3)]:pld1:input_permute.input_6" + switch ":udb@[UDB=(2,3)]:pld1:mc1.q==>:udb@[UDB=(2,3)]:pld1:output_permute3.q_1" + switch ":udb@[UDB=(2,3)]:pld1:output_permute3.output_3==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v32" + switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v32" + switch ":udbswitch@[UDB=(2,3)][side=top]:32,45" + switch ":udbswitch@[UDB=(2,3)][side=top]:64,45_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v64" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v64==>:udb@[UDB=(2,3)]:dp_wrapper:input_permute.ina_0" + switch ":udb@[UDB=(2,3)]:dp_wrapper:input_permute.cs_addr_0==>:udb@[UDB=(2,3)]:dp_wrapper:datapath.cs_addr_0" + term ":udb@[UDB=(2,3)]:dp_wrapper:datapath.cs_addr_0" +end \UART_1:BUART:tx_bitclk_enable_pre\ +net \UART_1:BUART:tx_bitclk_dp\ + term ":udb@[UDB=(3,3)]:dp_wrapper:datapath.cl0_comb" + switch ":udb@[UDB=(3,3)]:dp_wrapper:datapath.cl0_comb==>:udb@[UDB=(3,3)]:dp_wrapper:output_permute.cl0_comb" + switch ":udb@[UDB=(3,3)]:dp_wrapper:output_permute.outs_3==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v83" + switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v83" + switch ":udbswitch@[UDB=(2,3)][side=top]:83,61" + switch ":udbswitch@[UDB=(2,3)][side=top]:58,61_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v58" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v58==>:udb@[UDB=(2,3)]:pld1:input_permute.input_2" + switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc0_main_0==>:udb@[UDB=(2,3)]:pld1:mc0.main_0" + term ":udb@[UDB=(2,3)]:pld1:mc0.main_0" switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc1_main_0==>:udb@[UDB=(2,3)]:pld1:mc1.main_0" term ":udb@[UDB=(2,3)]:pld1:mc1.main_0" - switch ":hvswitch@[UDB=(2,2)][side=left]:28,41_f" - switch ":hvswitch@[UDB=(1,2)][side=left]:vseg_28_bot_f" - switch ":hvswitch@[UDB=(0,2)][side=left]:vseg_28_bot_f" - switch ":hvswitch@[UDB=(0,2)][side=left]:28,7_b" - switch ":hvswitch@[UDB=(0,3)][side=left]:hseg_7_f" - switch ":hvswitch@[UDB=(0,4)][side=left]:hseg_7_f" - switch ":dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:99,7_f" +end \UART_1:BUART:tx_bitclk_dp\ +net Net_479 + term ":udb@[UDB=(3,5)]:pld0:mc0.q" + switch ":udb@[UDB=(3,5)]:pld0:mc0.q==>:udb@[UDB=(3,5)]:pld0:output_permute2.q_0" + switch ":udb@[UDB=(3,5)]:pld0:output_permute2.output_2==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v29" + switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v29" + switch ":udbswitch@[UDB=(2,5)][side=top]:29,6" + switch ":udbswitch@[UDB=(2,5)][side=top]:3,6_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v3" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v3==>:udb@[UDB=(3,5)]:pld0:input_permute.input_1" + switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc0_main_0==>:udb@[UDB=(3,5)]:pld0:mc0.main_0" + term ":udb@[UDB=(3,5)]:pld0:mc0.main_0" + switch ":hvswitch@[UDB=(2,5)][side=left]:2,6_f" + switch ":hvswitch@[UDB=(2,5)][side=left]:vseg_2_top_b" + switch ":hvswitch@[UDB=(1,5)][side=left]:vseg_2_top_b" + switch ":hvswitch@[UDB=(0,5)][side=left]:2,25_b" + switch ":dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:103,25_f" switch "IStub-:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v101+:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v103+:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v99" switch "Stub-:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v101+:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v103+:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v99==>:ioport0:inputs2_mux.in_3" switch ":ioport0:inputs2_mux.pin6__pin_input==>:ioport0:pin6.pin_input" term ":ioport0:pin6.pin_input" end Net_479 +net \SPIM:BSPIM:cnt_enable\ + term ":udb@[UDB=(2,5)]:pld0:mc0.q" + switch ":udb@[UDB=(2,5)]:pld0:mc0.q==>:udb@[UDB=(2,5)]:pld0:output_permute0.q_0" + switch ":udb@[UDB=(2,5)]:pld0:output_permute0.output_0==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v24" + switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v24" + switch ":udbswitch@[UDB=(2,5)][side=top]:24,74" + switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_74_b" + switch ":udbswitch@[UDB=(2,4)][side=top]:96,74_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v96" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v96==>:udb@[UDB=(2,4)]:c7_en_mux.in_0" + switch ":udb@[UDB=(2,4)]:c7_en_mux.c7_en==>:udb@[UDB=(2,4)]:count7cell.enable" + term ":udb@[UDB=(2,4)]:count7cell.enable" + switch ":udbswitch@[UDB=(2,5)][side=top]:24,66" + switch ":udbswitch@[UDB=(2,5)][side=top]:8,66_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v8" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v8==>:udb@[UDB=(2,5)]:pld0:input_permute.input_4" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc0_main_9==>:udb@[UDB=(2,5)]:pld0:mc0.main_9" + term ":udb@[UDB=(2,5)]:pld0:mc0.main_9" +end \SPIM:BSPIM:cnt_enable\ net \SPIM:BSPIM:ld_ident\ - term ":udb@[UDB=(3,3)]:pld0:mc1.q" - switch ":udb@[UDB=(3,3)]:pld0:mc1.q==>:udb@[UDB=(3,3)]:pld0:output_permute2.q_1" - switch ":udb@[UDB=(3,3)]:pld0:output_permute2.output_2==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v29" - switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v29" - switch ":udbswitch@[UDB=(2,3)][side=top]:29,87" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_87_f" - switch ":udbswitch@[UDB=(2,4)][side=top]:10,87_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v10" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v10==>:udb@[UDB=(2,4)]:pld0:input_permute.input_5" + term ":udb@[UDB=(2,5)]:pld1:mc1.q" + switch ":udb@[UDB=(2,5)]:pld1:mc1.q==>:udb@[UDB=(2,5)]:pld1:output_permute2.q_1" + switch ":udb@[UDB=(2,5)]:pld1:output_permute2.output_2==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v34" + switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v34" + switch ":udbswitch@[UDB=(2,5)][side=top]:34,65" + switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_65_b" + switch ":udbswitch@[UDB=(2,4)][side=top]:18,65_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v18" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v18==>:udb@[UDB=(2,4)]:pld0:input_permute.input_9" switch ":udb@[UDB=(2,4)]:pld0:input_permute.mc0_main_10==>:udb@[UDB=(2,4)]:pld0:mc0.main_10" term ":udb@[UDB=(2,4)]:pld0:mc0.main_10" - switch ":udbswitch@[UDB=(2,3)][side=top]:29,37" - switch ":udbswitch@[UDB=(2,3)][side=top]:5,37_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v5" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v5==>:udb@[UDB=(3,3)]:pld0:input_permute.input_2" - switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc1_main_3==>:udb@[UDB=(3,3)]:pld0:mc1.main_3" - term ":udb@[UDB=(3,3)]:pld0:mc1.main_3" + switch ":udbswitch@[UDB=(2,5)][side=top]:50,65_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v50" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v50==>:udb@[UDB=(2,5)]:pld1:input_permute.input_6" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc1_main_3==>:udb@[UDB=(2,5)]:pld1:mc1.main_3" + term ":udb@[UDB=(2,5)]:pld1:mc1.main_3" end \SPIM:BSPIM:ld_ident\ net \SPIM:BSPIM:is_spi_done\ term ":udb@[UDB=(2,4)]:pld1:mc0.q" - switch ":udb@[UDB=(2,4)]:pld1:mc0.q==>:udb@[UDB=(2,4)]:pld1:output_permute3.q_0" - switch ":udb@[UDB=(2,4)]:pld1:output_permute3.output_3==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v32" - switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v32" - switch ":udbswitch@[UDB=(2,4)][side=top]:32,69" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_69_b" - switch ":udbswitch@[UDB=(2,3)][side=top]:8,69_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v8" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v8==>:udb@[UDB=(2,3)]:pld0:input_permute.input_4" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc0_main_8==>:udb@[UDB=(2,3)]:pld0:mc0.main_8" - term ":udb@[UDB=(2,3)]:pld0:mc0.main_8" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc1_main_9==>:udb@[UDB=(2,3)]:pld0:mc1.main_9" - term ":udb@[UDB=(2,3)]:pld0:mc1.main_9" - switch ":udbswitch@[UDB=(2,4)][side=top]:48,69_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v48" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v48==>:udb@[UDB=(2,4)]:pld1:input_permute.input_7" + switch ":udb@[UDB=(2,4)]:pld1:mc0.q==>:udb@[UDB=(2,4)]:pld1:output_permute0.q_0" + switch ":udb@[UDB=(2,4)]:pld1:output_permute0.output_0==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v38" + switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v38" + switch ":udbswitch@[UDB=(2,4)][side=top]:38,53" + switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_53_f" + switch ":udbswitch@[UDB=(2,5)][side=top]:22,53_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v22" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v22==>:udb@[UDB=(2,5)]:pld0:input_permute.input_11" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc0_main_8==>:udb@[UDB=(2,5)]:pld0:mc0.main_8" + term ":udb@[UDB=(2,5)]:pld0:mc0.main_8" + switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc1_main_9==>:udb@[UDB=(2,5)]:pld0:mc1.main_9" + term ":udb@[UDB=(2,5)]:pld0:mc1.main_9" + switch ":udbswitch@[UDB=(2,4)][side=top]:54,53_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v54" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v54==>:udb@[UDB=(2,4)]:pld1:input_permute.input_4" switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc0_main_9==>:udb@[UDB=(2,4)]:pld1:mc0.main_9" term ":udb@[UDB=(2,4)]:pld1:mc0.main_9" switch ":udb@[UDB=(2,4)]:pld1:input_permute.mc1_main_9==>:udb@[UDB=(2,4)]:pld1:mc1.main_9" - term ":udb@[UDB=(2,4)]:pld1:mc1.main_9" -end \SPIM:BSPIM:is_spi_done\ -net \SPIM:BSPIM:mosi_hs_reg\ - term ":udb@[UDB=(3,5)]:pld1:mc0.q" - switch ":udb@[UDB=(3,5)]:pld1:mc0.q==>:udb@[UDB=(3,5)]:pld1:output_permute0.q_0" - switch ":udb@[UDB=(3,5)]:pld1:output_permute0.output_0==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v39" - switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v39" - switch ":udbswitch@[UDB=(2,5)][side=top]:39,94" - switch ":udbswitch@[UDB=(2,5)][side=top]:49,94_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v49" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v49==>:udb@[UDB=(3,5)]:pld1:input_permute.input_7" - switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc0_main_4==>:udb@[UDB=(3,5)]:pld1:mc0.main_4" - term ":udb@[UDB=(3,5)]:pld1:mc0.main_4" - switch ":udbswitch@[UDB=(2,5)][side=top]:49,19_b" - switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_19_b" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_19_b" - switch ":udbswitch@[UDB=(2,3)][side=top]:17,19_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v17" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v17==>:udb@[UDB=(3,3)]:pld0:input_permute.input_8" - switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc2_main_1==>:udb@[UDB=(3,3)]:pld0:mc2.main_1" - term ":udb@[UDB=(3,3)]:pld0:mc2.main_1" + term ":udb@[UDB=(2,4)]:pld1:mc1.main_9" +end \SPIM:BSPIM:is_spi_done\ +net \SPIM:BSPIM:mosi_hs_reg\ + term ":udb@[UDB=(3,3)]:pld1:mc0.q" + switch ":udb@[UDB=(3,3)]:pld1:mc0.q==>:udb@[UDB=(3,3)]:pld1:output_permute3.q_0" + switch ":udb@[UDB=(3,3)]:pld1:output_permute3.output_3==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v33" + switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v33" + switch ":udbswitch@[UDB=(2,3)][side=top]:33,44" + switch ":udbswitch@[UDB=(2,3)][side=top]:57,44_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v57" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v57==>:udb@[UDB=(3,3)]:pld1:input_permute.input_3" + switch ":udb@[UDB=(3,3)]:pld1:input_permute.mc0_main_4==>:udb@[UDB=(3,3)]:pld1:mc0.main_4" + term ":udb@[UDB=(3,3)]:pld1:mc0.main_4" + switch ":udbswitch@[UDB=(2,3)][side=top]:57,70_b" + switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_70_f" + switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_70_f" + switch ":udbswitch@[UDB=(2,5)][side=top]:1,70_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v1" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v1==>:udb@[UDB=(3,5)]:pld0:input_permute.input_0" + switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc2_main_1==>:udb@[UDB=(3,5)]:pld0:mc2.main_1" + term ":udb@[UDB=(3,5)]:pld0:mc2.main_1" end \SPIM:BSPIM:mosi_hs_reg\ -net \SPIM:BSPIM:cnt_enable\ - term ":udb@[UDB=(2,3)]:pld0:mc0.q" - switch ":udb@[UDB=(2,3)]:pld0:mc0.q==>:udb@[UDB=(2,3)]:pld0:output_permute0.q_0" - switch ":udb@[UDB=(2,3)]:pld0:output_permute0.output_0==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v24" - switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v24" - switch ":udbswitch@[UDB=(2,3)][side=top]:24,18" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_18_f" - switch ":udbswitch@[UDB=(2,4)][side=top]:102,18_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v102" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v102==>:udb@[UDB=(2,4)]:c7_en_mux.in_3" - switch ":udb@[UDB=(2,4)]:c7_en_mux.c7_en==>:udb@[UDB=(2,4)]:count7cell.enable" - term ":udb@[UDB=(2,4)]:count7cell.enable" - switch ":udbswitch@[UDB=(2,3)][side=top]:6,18_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v6" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v6==>:udb@[UDB=(2,3)]:pld0:input_permute.input_3" - switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc0_main_9==>:udb@[UDB=(2,3)]:pld0:mc0.main_9" - term ":udb@[UDB=(2,3)]:pld0:mc0.main_9" -end \SPIM:BSPIM:cnt_enable\ net \SPIM:BSPIM:mosi_from_dp_reg\ term ":udb@[UDB=(3,4)]:pld0:mc0.q" - switch ":udb@[UDB=(3,4)]:pld0:mc0.q==>:udb@[UDB=(3,4)]:pld0:output_permute3.q_0" - switch ":udb@[UDB=(3,4)]:pld0:output_permute3.output_3==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v31" - switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v31" - switch ":udbswitch@[UDB=(2,4)][side=top]:31,48" - switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_48_f" - switch ":udbswitch@[UDB=(2,5)][side=top]:63,48_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v63" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v63==>:udb@[UDB=(3,5)]:pld1:input_permute.input_0" - switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc0_main_5==>:udb@[UDB=(3,5)]:pld1:mc0.main_5" - term ":udb@[UDB=(3,5)]:pld1:mc0.main_5" + switch ":udb@[UDB=(3,4)]:pld0:mc0.q==>:udb@[UDB=(3,4)]:pld0:output_permute1.q_0" + switch ":udb@[UDB=(3,4)]:pld0:output_permute1.output_1==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v27" + switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v27" + switch ":udbswitch@[UDB=(2,4)][side=top]:27,60" + switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_60_b" + switch ":udbswitch@[UDB=(2,3)][side=top]:59,60_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v59" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v59==>:udb@[UDB=(3,3)]:pld1:input_permute.input_2" + switch ":udb@[UDB=(3,3)]:pld1:input_permute.mc0_main_5==>:udb@[UDB=(3,3)]:pld1:mc0.main_5" + term ":udb@[UDB=(3,3)]:pld1:mc0.main_5" end \SPIM:BSPIM:mosi_from_dp_reg\ net \UART_1:BUART:tx_fifo_empty\ - term ":udb@[UDB=(3,5)]:dp_wrapper:datapath.f0_blk_stat_comb" - switch ":udb@[UDB=(3,5)]:dp_wrapper:datapath.f0_blk_stat_comb==>:udb@[UDB=(3,5)]:dp_wrapper:output_permute.f0_blk_stat_comb" - switch ":udb@[UDB=(3,5)]:dp_wrapper:output_permute.outs_4==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v85" - switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v85" - switch ":udbswitch@[UDB=(2,5)][side=top]:85,32" - switch ":udbswitch@[UDB=(2,5)][side=top]:10,32_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v10" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v10==>:udb@[UDB=(2,5)]:pld0:input_permute.input_5" - switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc3_main_2==>:udb@[UDB=(2,5)]:pld0:mc3.main_2" - term ":udb@[UDB=(2,5)]:pld0:mc3.main_2" - switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc1_main_2==>:udb@[UDB=(2,5)]:pld0:mc1.main_2" - term ":udb@[UDB=(2,5)]:pld0:mc1.main_2" - switch ":udbswitch@[UDB=(2,5)][side=top]:10,60_b" - switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_60_b" - switch ":udbswitch@[UDB=(2,4)][side=top]:91,60_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v91" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v91==>:udb@[UDB=(3,4)]:statusicell.status_1" - term ":udb@[UDB=(3,4)]:statusicell.status_1" + term ":udb@[UDB=(2,3)]:dp_wrapper:datapath.f0_blk_stat_comb" + switch ":udb@[UDB=(2,3)]:dp_wrapper:datapath.f0_blk_stat_comb==>:udb@[UDB=(2,3)]:dp_wrapper:output_permute.f0_blk_stat_comb" + switch ":udb@[UDB=(2,3)]:dp_wrapper:output_permute.outs_0==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v76" + switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v76" + switch ":udbswitch@[UDB=(2,3)][side=top]:76,14" + switch ":udbswitch@[UDB=(2,3)][side=top]:4,14_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v4" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v4==>:udb@[UDB=(2,3)]:pld0:input_permute.input_2" + switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc3_main_2==>:udb@[UDB=(2,3)]:pld0:mc3.main_2" + term ":udb@[UDB=(2,3)]:pld0:mc3.main_2" + switch ":udb@[UDB=(2,3)]:pld0:input_permute.mc1_main_2==>:udb@[UDB=(2,3)]:pld0:mc1.main_2" + term ":udb@[UDB=(2,3)]:pld0:mc1.main_2" + switch ":udbswitch@[UDB=(2,3)][side=top]:4,40_b" + switch ":udbswitch@[UDB=(2,3)][side=top]:90,40_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v90" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v90==>:udb@[UDB=(2,3)]:statusicell.status_1" + term ":udb@[UDB=(2,3)]:statusicell.status_1" end \UART_1:BUART:tx_fifo_empty\ net \UART_1:BUART:tx_status_0\ - term ":udb@[UDB=(2,5)]:pld0:mc3.q" - switch ":udb@[UDB=(2,5)]:pld0:mc3.q==>:udb@[UDB=(2,5)]:pld0:output_permute3.q_3" - switch ":udb@[UDB=(2,5)]:pld0:output_permute3.output_3==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v30" - switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v30" - switch ":udbswitch@[UDB=(2,5)][side=top]:30,46" - switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_46_b" - switch ":udbswitch@[UDB=(2,4)][side=top]:89,46_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v89" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v89==>:udb@[UDB=(3,4)]:statusicell.status_0" - term ":udb@[UDB=(3,4)]:statusicell.status_0" + term ":udb@[UDB=(2,3)]:pld0:mc3.q" + switch ":udb@[UDB=(2,3)]:pld0:mc3.q==>:udb@[UDB=(2,3)]:pld0:output_permute3.q_3" + switch ":udb@[UDB=(2,3)]:pld0:output_permute3.output_3==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v30" + switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v30" + switch ":udbswitch@[UDB=(2,3)][side=top]:30,43" + switch ":udbswitch@[UDB=(2,3)][side=top]:88,43_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v88" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v88==>:udb@[UDB=(2,3)]:statusicell.status_0" + term ":udb@[UDB=(2,3)]:statusicell.status_0" end \UART_1:BUART:tx_status_0\ net Net_439 - term ":udb@[UDB=(3,3)]:pld0:mc0.q" - switch ":udb@[UDB=(3,3)]:pld0:mc0.q==>:udb@[UDB=(3,3)]:pld0:output_permute1.q_0" - switch ":udb@[UDB=(3,3)]:pld0:output_permute1.output_1==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v27" - switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v27" - switch ":udbswitch@[UDB=(2,3)][side=top]:27,62" - switch ":udbswitch@[UDB=(2,3)][side=top]:11,62_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v11" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v11==>:udb@[UDB=(3,3)]:pld0:input_permute.input_5" - switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc0_main_3==>:udb@[UDB=(3,3)]:pld0:mc0.main_3" - term ":udb@[UDB=(3,3)]:pld0:mc0.main_3" - switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc2_main_0==>:udb@[UDB=(3,3)]:pld0:mc2.main_0" - term ":udb@[UDB=(3,3)]:pld0:mc2.main_0" - switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc3_main_0==>:udb@[UDB=(3,3)]:pld0:mc3.main_0" - term ":udb@[UDB=(3,3)]:pld0:mc3.main_0" - switch ":udbswitch@[UDB=(2,3)][side=top]:51,62_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v51" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v51==>:udb@[UDB=(3,3)]:pld1:input_permute.input_6" - switch ":udb@[UDB=(3,3)]:pld1:input_permute.mc0_main_0==>:udb@[UDB=(3,3)]:pld1:mc0.main_0" - term ":udb@[UDB=(3,3)]:pld1:mc0.main_0" - switch ":udb@[UDB=(3,3)]:pld1:input_permute.mc1_main_0==>:udb@[UDB=(3,3)]:pld1:mc1.main_0" - term ":udb@[UDB=(3,3)]:pld1:mc1.main_0" - switch ":udb@[UDB=(3,3)]:pld1:input_permute.mc2_main_0==>:udb@[UDB=(3,3)]:pld1:mc2.main_0" - term ":udb@[UDB=(3,3)]:pld1:mc2.main_0" + term ":udb@[UDB=(3,5)]:pld0:mc1.q" + switch ":udb@[UDB=(3,5)]:pld0:mc1.q==>:udb@[UDB=(3,5)]:pld0:output_permute1.q_1" + switch ":udb@[UDB=(3,5)]:pld0:output_permute1.output_1==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v27" + switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v27" + switch ":udbswitch@[UDB=(2,5)][side=top]:27,62" + switch ":udbswitch@[UDB=(2,5)][side=top]:11,62_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v11" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v11==>:udb@[UDB=(3,5)]:pld0:input_permute.input_5" + switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc1_main_3==>:udb@[UDB=(3,5)]:pld0:mc1.main_3" + term ":udb@[UDB=(3,5)]:pld0:mc1.main_3" + switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc2_main_0==>:udb@[UDB=(3,5)]:pld0:mc2.main_0" + term ":udb@[UDB=(3,5)]:pld0:mc2.main_0" + switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc3_main_0==>:udb@[UDB=(3,5)]:pld0:mc3.main_0" + term ":udb@[UDB=(3,5)]:pld0:mc3.main_0" + switch ":udbswitch@[UDB=(2,5)][side=top]:51,62_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v51" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v51==>:udb@[UDB=(3,5)]:pld1:input_permute.input_6" + switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc0_main_0==>:udb@[UDB=(3,5)]:pld1:mc0.main_0" + term ":udb@[UDB=(3,5)]:pld1:mc0.main_0" + switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc1_main_0==>:udb@[UDB=(3,5)]:pld1:mc1.main_0" + term ":udb@[UDB=(3,5)]:pld1:mc1.main_0" + switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc2_main_0==>:udb@[UDB=(3,5)]:pld1:mc2.main_0" + term ":udb@[UDB=(3,5)]:pld1:mc2.main_0" + switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc3_main_0==>:udb@[UDB=(3,5)]:pld1:mc3.main_0" + term ":udb@[UDB=(3,5)]:pld1:mc3.main_0" end Net_439 +net \SPIM:BSPIM:load_cond\ + term ":udb@[UDB=(2,5)]:pld1:mc0.q" + switch ":udb@[UDB=(2,5)]:pld1:mc0.q==>:udb@[UDB=(2,5)]:pld1:output_permute0.q_0" + switch ":udb@[UDB=(2,5)]:pld1:output_permute0.output_0==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v38" + switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v38" + switch ":udbswitch@[UDB=(2,5)][side=top]:38,27" + switch ":udbswitch@[UDB=(2,5)][side=top]:62,27_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v62" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v62==>:udb@[UDB=(2,5)]:pld1:input_permute.input_0" + switch ":udb@[UDB=(2,5)]:pld1:input_permute.mc0_main_8==>:udb@[UDB=(2,5)]:pld1:mc0.main_8" + term ":udb@[UDB=(2,5)]:pld1:mc0.main_8" +end \SPIM:BSPIM:load_cond\ net \SPIM:BSPIM:mosi_pre_reg\ term ":udb@[UDB=(2,4)]:pld0:mc0.q" - switch ":udb@[UDB=(2,4)]:pld0:mc0.q==>:udb@[UDB=(2,4)]:pld0:output_permute3.q_0" - switch ":udb@[UDB=(2,4)]:pld0:output_permute3.output_3==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v30" - switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v30" - switch ":udbswitch@[UDB=(2,4)][side=top]:30,95" - switch ":udbswitch@[UDB=(2,4)][side=top]:0,95_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v0" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v0==>:udb@[UDB=(2,4)]:pld0:input_permute.input_0" + switch ":udb@[UDB=(2,4)]:pld0:mc0.q==>:udb@[UDB=(2,4)]:pld0:output_permute0.q_0" + switch ":udb@[UDB=(2,4)]:pld0:output_permute0.output_0==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v24" + switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v24" + switch ":udbswitch@[UDB=(2,4)][side=top]:24,18" + switch ":udbswitch@[UDB=(2,4)][side=top]:6,18_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v6" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v6==>:udb@[UDB=(2,4)]:pld0:input_permute.input_3" switch ":udb@[UDB=(2,4)]:pld0:input_permute.mc0_main_9==>:udb@[UDB=(2,4)]:pld0:mc0.main_9" term ":udb@[UDB=(2,4)]:pld0:mc0.main_9" end \SPIM:BSPIM:mosi_pre_reg\ net \UART_1:BUART:tx_shift_out\ - term ":udb@[UDB=(3,5)]:dp_wrapper:datapath.so_comb" - switch ":udb@[UDB=(3,5)]:dp_wrapper:datapath.so_comb==>:udb@[UDB=(3,5)]:dp_wrapper:output_permute.so_comb" - switch ":udb@[UDB=(3,5)]:dp_wrapper:output_permute.outs_2==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v81" - switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v81" - switch ":udbswitch@[UDB=(2,5)][side=top]:81,67" - switch ":udbswitch@[UDB=(2,5)][side=top]:17,67_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v17" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v17==>:udb@[UDB=(3,5)]:pld0:input_permute.input_8" - switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc0_main_3==>:udb@[UDB=(3,5)]:pld0:mc0.main_3" - term ":udb@[UDB=(3,5)]:pld0:mc0.main_3" + term ":udb@[UDB=(2,3)]:dp_wrapper:datapath.so_comb" + switch ":udb@[UDB=(2,3)]:dp_wrapper:datapath.so_comb==>:udb@[UDB=(2,3)]:dp_wrapper:output_permute.so_comb" + switch ":udb@[UDB=(2,3)]:dp_wrapper:output_permute.outs_3==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v82" + switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v82" + switch ":udbswitch@[UDB=(2,3)][side=top]:82,39" + switch ":udbswitch@[UDB=(2,3)][side=top]:21,39_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v21" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v21==>:udb@[UDB=(3,3)]:pld0:input_permute.input_10" + switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc0_main_3==>:udb@[UDB=(3,3)]:pld0:mc0.main_3" + term ":udb@[UDB=(3,3)]:pld0:mc0.main_3" end \UART_1:BUART:tx_shift_out\ net \SPIM:BSPIM:load_rx_data\ - term ":udb@[UDB=(2,3)]:pld1:mc2.q" - switch ":udb@[UDB=(2,3)]:pld1:mc2.q==>:udb@[UDB=(2,3)]:pld1:output_permute3.q_2" - switch ":udb@[UDB=(2,3)]:pld1:output_permute3.output_3==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v32" - switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v32" - switch ":udbswitch@[UDB=(2,3)][side=top]:32,2" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_2_f" + term ":udb@[UDB=(2,5)]:pld1:mc2.q" + switch ":udb@[UDB=(2,5)]:pld1:mc2.q==>:udb@[UDB=(2,5)]:pld1:output_permute3.q_2" + switch ":udb@[UDB=(2,5)]:pld1:output_permute3.output_3==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v32" + switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v32" + switch ":udbswitch@[UDB=(2,5)][side=top]:32,2" + switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_2_b" switch ":udbswitch@[UDB=(2,4)][side=top]:72,2_f" switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v72" switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v72==>:udb@[UDB=(2,4)]:dp_wrapper:input_permute.ina_4" @@ -893,59 +1068,58 @@ net \SPIM:BSPIM:load_rx_data\ term ":udb@[UDB=(2,4)]:dp_wrapper:datapath.f1_load" end \SPIM:BSPIM:load_rx_data\ net \UART_1:BUART:txn\ - term ":udb@[UDB=(3,5)]:pld0:mc0.q" - switch ":udb@[UDB=(3,5)]:pld0:mc0.q==>:udb@[UDB=(3,5)]:pld0:output_permute2.q_0" - switch ":udb@[UDB=(3,5)]:pld0:output_permute2.output_2==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v29" - switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v29" - switch ":udbswitch@[UDB=(2,5)][side=top]:29,56" - switch ":udbswitch@[UDB=(2,5)][side=top]:13,56_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v13" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v13==>:udb@[UDB=(3,5)]:pld0:input_permute.input_6" - switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc0_main_0==>:udb@[UDB=(3,5)]:pld0:mc0.main_0" - term ":udb@[UDB=(3,5)]:pld0:mc0.main_0" - switch ":udbswitch@[UDB=(2,5)][side=top]:13,13_b" - switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_13_b" - switch ":udbswitch@[UDB=(2,4)][side=top]:19,13_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v19" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v19==>:udb@[UDB=(3,4)]:pld0:input_permute.input_9" - switch ":udb@[UDB=(3,4)]:pld0:input_permute.mc1_main_0==>:udb@[UDB=(3,4)]:pld0:mc1.main_0" - term ":udb@[UDB=(3,4)]:pld0:mc1.main_0" + term ":udb@[UDB=(3,3)]:pld0:mc0.q" + switch ":udb@[UDB=(3,3)]:pld0:mc0.q==>:udb@[UDB=(3,3)]:pld0:output_permute1.q_0" + switch ":udb@[UDB=(3,3)]:pld0:output_permute1.output_1==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v27" + switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v27" + switch ":udbswitch@[UDB=(2,3)][side=top]:27,62" + switch ":udbswitch@[UDB=(2,3)][side=top]:11,62_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v11" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v11==>:udb@[UDB=(3,3)]:pld0:input_permute.input_5" + switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc0_main_0==>:udb@[UDB=(3,3)]:pld0:mc0.main_0" + term ":udb@[UDB=(3,3)]:pld0:mc0.main_0" + switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_62_f" + switch ":udbswitch@[UDB=(2,4)][side=top]:11,62_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v11" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v11==>:udb@[UDB=(3,4)]:pld0:input_permute.input_5" + switch ":udb@[UDB=(3,4)]:pld0:input_permute.mc2_main_0==>:udb@[UDB=(3,4)]:pld0:mc2.main_0" + term ":udb@[UDB=(3,4)]:pld0:mc2.main_0" end \UART_1:BUART:txn\ net \SPIM:Net_276\ term ":clockblockcell.dclk_glb_0" - switch ":clockblockcell.dclk_glb_0==>:udb@[UDB=(3,3)]:clockreset:clk_pld0_mux.in_0" - switch ":udb@[UDB=(3,3)]:clockreset:clk_pld0_mux.pld0_clk==>:udb@[UDB=(3,3)]:pld0:mc0.clock_0" - term ":udb@[UDB=(3,3)]:pld0:mc0.clock_0" - switch ":clockblockcell.dclk_glb_0==>:udb@[UDB=(2,3)]:clockreset:clk_pld1_mux.in_0" - switch ":udb@[UDB=(2,3)]:clockreset:clk_pld1_mux.pld1_clk==>:udb@[UDB=(2,3)]:pld1:mc1.clock_0" - term ":udb@[UDB=(2,3)]:pld1:mc1.clock_0" + switch ":clockblockcell.dclk_glb_0==>:udb@[UDB=(3,5)]:clockreset:clk_pld0_mux.in_0" + switch ":udb@[UDB=(3,5)]:clockreset:clk_pld0_mux.pld0_clk==>:udb@[UDB=(3,5)]:pld0:mc1.clock_0" + term ":udb@[UDB=(3,5)]:pld0:mc1.clock_0" + switch ":udb@[UDB=(3,5)]:clockreset:clk_pld0_mux.pld0_clk==>:udb@[UDB=(3,5)]:pld0:mc0.clock_0" + term ":udb@[UDB=(3,5)]:pld0:mc0.clock_0" switch ":clockblockcell.dclk_glb_0==>:udb@[UDB=(2,4)]:clockreset:clk_sc_mux.in_0" switch ":udb@[UDB=(2,4)]:clockreset:clk_sc_mux.sc_clk==>:udb@[UDB=(2,4)]:count7cell.clock" term ":udb@[UDB=(2,4)]:count7cell.clock" + switch ":clockblockcell.dclk_glb_0==>:udb@[UDB=(3,4)]:clockreset:clk_sc_mux.in_0" + switch ":udb@[UDB=(3,4)]:clockreset:clk_sc_mux.sc_clk==>:udb@[UDB=(3,4)]:statusicell.clock" + term ":udb@[UDB=(3,4)]:statusicell.clock" switch ":clockblockcell.dclk_glb_0==>:udb@[UDB=(2,5)]:clockreset:clk_sc_mux.in_0" switch ":udb@[UDB=(2,5)]:clockreset:clk_sc_mux.sc_clk==>:udb@[UDB=(2,5)]:statusicell.clock" term ":udb@[UDB=(2,5)]:statusicell.clock" - switch ":clockblockcell.dclk_glb_0==>:udb@[UDB=(2,3)]:clockreset:clk_sc_mux.in_0" - switch ":udb@[UDB=(2,3)]:clockreset:clk_sc_mux.sc_clk==>:udb@[UDB=(2,3)]:statusicell.clock" - term ":udb@[UDB=(2,3)]:statusicell.clock" - switch ":clockblockcell.dclk_glb_0==>:udb@[UDB=(2,3)]:clockreset:clk_pld0_mux.in_0" - switch ":udb@[UDB=(2,3)]:clockreset:clk_pld0_mux.pld0_clk==>:udb@[UDB=(2,3)]:pld0:mc0.clock_0" - term ":udb@[UDB=(2,3)]:pld0:mc0.clock_0" + switch ":clockblockcell.dclk_glb_0==>:udb@[UDB=(2,5)]:clockreset:clk_pld0_mux.in_0" + switch ":udb@[UDB=(2,5)]:clockreset:clk_pld0_mux.pld0_clk==>:udb@[UDB=(2,5)]:pld0:mc0.clock_0" + term ":udb@[UDB=(2,5)]:pld0:mc0.clock_0" switch ":clockblockcell.dclk_glb_0==>:udb@[UDB=(2,4)]:clockreset:clk_pld1_mux.in_0" switch ":udb@[UDB=(2,4)]:clockreset:clk_pld1_mux.pld1_clk==>:udb@[UDB=(2,4)]:pld1:mc0.clock_0" term ":udb@[UDB=(2,4)]:pld1:mc0.clock_0" - switch ":udb@[UDB=(3,3)]:clockreset:clk_pld0_mux.pld0_clk==>:udb@[UDB=(3,3)]:pld0:mc1.clock_0" - term ":udb@[UDB=(3,3)]:pld0:mc1.clock_0" - switch ":udb@[UDB=(2,3)]:clockreset:clk_pld1_mux.pld1_clk==>:udb@[UDB=(2,3)]:pld1:mc0.clock_0" - term ":udb@[UDB=(2,3)]:pld1:mc0.clock_0" - switch ":udb@[UDB=(2,3)]:clockreset:clk_pld1_mux.pld1_clk==>:udb@[UDB=(2,3)]:pld1:mc2.clock_0" - term ":udb@[UDB=(2,3)]:pld1:mc2.clock_0" + switch ":clockblockcell.dclk_glb_0==>:udb@[UDB=(2,5)]:clockreset:clk_pld1_mux.in_0" + switch ":udb@[UDB=(2,5)]:clockreset:clk_pld1_mux.pld1_clk==>:udb@[UDB=(2,5)]:pld1:mc1.clock_0" + term ":udb@[UDB=(2,5)]:pld1:mc1.clock_0" + switch ":udb@[UDB=(2,5)]:clockreset:clk_pld1_mux.pld1_clk==>:udb@[UDB=(2,5)]:pld1:mc0.clock_0" + term ":udb@[UDB=(2,5)]:pld1:mc0.clock_0" + switch ":udb@[UDB=(2,5)]:clockreset:clk_pld1_mux.pld1_clk==>:udb@[UDB=(2,5)]:pld1:mc2.clock_0" + term ":udb@[UDB=(2,5)]:pld1:mc2.clock_0" switch ":clockblockcell.dclk_glb_0==>:udb@[UDB=(3,4)]:clockreset:clk_pld0_mux.in_0" switch ":udb@[UDB=(3,4)]:clockreset:clk_pld0_mux.pld0_clk==>:udb@[UDB=(3,4)]:pld0:mc0.clock_0" term ":udb@[UDB=(3,4)]:pld0:mc0.clock_0" - switch ":clockblockcell.dclk_glb_0==>:udb@[UDB=(3,5)]:clockreset:clk_pld1_mux.in_0" - switch ":udb@[UDB=(3,5)]:clockreset:clk_pld1_mux.pld1_clk==>:udb@[UDB=(3,5)]:pld1:mc0.clock_0" - term ":udb@[UDB=(3,5)]:pld1:mc0.clock_0" + switch ":clockblockcell.dclk_glb_0==>:udb@[UDB=(3,3)]:clockreset:clk_pld1_mux.in_0" + switch ":udb@[UDB=(3,3)]:clockreset:clk_pld1_mux.pld1_clk==>:udb@[UDB=(3,3)]:pld1:mc0.clock_0" + term ":udb@[UDB=(3,3)]:pld1:mc0.clock_0" switch ":clockblockcell.dclk_glb_0==>:udb@[UDB=(2,4)]:clockreset:clk_pld0_mux.in_0" switch ":udb@[UDB=(2,4)]:clockreset:clk_pld0_mux.pld0_clk==>:udb@[UDB=(2,4)]:pld0:mc0.clock_0" term ":udb@[UDB=(2,4)]:pld0:mc0.clock_0" @@ -954,136 +1128,209 @@ net \SPIM:Net_276\ term ":udb@[UDB=(2,4)]:dp_wrapper:datapath.clock" switch ":udb@[UDB=(2,4)]:clockreset:clk_pld1_mux.pld1_clk==>:udb@[UDB=(2,4)]:pld1:mc3.clock_0" term ":udb@[UDB=(2,4)]:pld1:mc3.clock_0" - switch ":udb@[UDB=(2,3)]:clockreset:clk_pld0_mux.pld0_clk==>:udb@[UDB=(2,3)]:pld0:mc1.clock_0" - term ":udb@[UDB=(2,3)]:pld0:mc1.clock_0" + switch ":udb@[UDB=(2,5)]:clockreset:clk_pld0_mux.pld0_clk==>:udb@[UDB=(2,5)]:pld0:mc1.clock_0" + term ":udb@[UDB=(2,5)]:pld0:mc1.clock_0" switch ":udb@[UDB=(2,4)]:clockreset:clk_pld1_mux.pld1_clk==>:udb@[UDB=(2,4)]:pld1:mc1.clock_0" term ":udb@[UDB=(2,4)]:pld1:mc1.clock_0" end \SPIM:Net_276\ -net Net_191 - term ":clockblockcell.dclk_glb_1" - switch ":clockblockcell.dclk_glb_1==>:udb@[UDB=(3,5)]:clockreset:clk_dp_mux.in_1" - switch ":udb@[UDB=(3,5)]:clockreset:clk_dp_mux.dp_clk==>:udb@[UDB=(3,5)]:dp_wrapper:datapath.clock" - term ":udb@[UDB=(3,5)]:dp_wrapper:datapath.clock" - switch ":clockblockcell.dclk_glb_1==>:udb@[UDB=(3,4)]:clockreset:clk_sc_mux.in_1" - switch ":udb@[UDB=(3,4)]:clockreset:clk_sc_mux.sc_clk==>:udb@[UDB=(3,4)]:statusicell.clock" - term ":udb@[UDB=(3,4)]:statusicell.clock" - switch ":clockblockcell.dclk_glb_1==>:udb@[UDB=(2,5)]:clockreset:clk_dp_mux.in_1" - switch ":udb@[UDB=(2,5)]:clockreset:clk_dp_mux.dp_clk==>:udb@[UDB=(2,5)]:dp_wrapper:datapath.clock" - term ":udb@[UDB=(2,5)]:dp_wrapper:datapath.clock" - switch ":clockblockcell.dclk_glb_1==>:udb@[UDB=(2,5)]:clockreset:clk_pld1_mux.in_1" - switch ":udb@[UDB=(2,5)]:clockreset:clk_pld1_mux.pld1_clk==>:udb@[UDB=(2,5)]:pld1:mc0.clock_0" - term ":udb@[UDB=(2,5)]:pld1:mc0.clock_0" - switch ":clockblockcell.dclk_glb_1==>:udb@[UDB=(2,5)]:clockreset:clk_pld0_mux.in_1" - switch ":udb@[UDB=(2,5)]:clockreset:clk_pld0_mux.pld0_clk==>:udb@[UDB=(2,5)]:pld0:mc1.clock_0" - term ":udb@[UDB=(2,5)]:pld0:mc1.clock_0" - switch ":udb@[UDB=(2,5)]:clockreset:clk_pld0_mux.pld0_clk==>:udb@[UDB=(2,5)]:pld0:mc2.clock_0" - term ":udb@[UDB=(2,5)]:pld0:mc2.clock_0" - switch ":clockblockcell.dclk_glb_1==>:udb@[UDB=(3,5)]:clockreset:clk_pld0_mux.in_1" - switch ":udb@[UDB=(3,5)]:clockreset:clk_pld0_mux.pld0_clk==>:udb@[UDB=(3,5)]:pld0:mc1.clock_0" - term ":udb@[UDB=(3,5)]:pld0:mc1.clock_0" - switch ":udb@[UDB=(3,5)]:clockreset:clk_pld0_mux.pld0_clk==>:udb@[UDB=(3,5)]:pld0:mc0.clock_0" - term ":udb@[UDB=(3,5)]:pld0:mc0.clock_0" -end Net_191 net ClockBlock_BUS_CLK term ":clockblockcell.clk_bus_glb" + switch ":clockblockcell.clk_bus_glb==>:udb@[UDB=(3,0)]:clockreset:clk_sc_mux.in_9" + switch ":udb@[UDB=(3,0)]:clockreset:clk_sc_mux.sc_clk==>:udb@[UDB=(3,0)]:sync_wrapper:sync0.clock" + term ":udb@[UDB=(3,0)]:sync_wrapper:sync0.clock" switch ":clockblockcell.clk_bus_glb==>:udb@[UDB=(2,4)]:dp_wrapper:datapath.busclk" term ":udb@[UDB=(2,4)]:dp_wrapper:datapath.busclk" - switch ":clockblockcell.clk_bus_glb==>:udb@[UDB=(3,3)]:controlcell.busclk" - term ":udb@[UDB=(3,3)]:controlcell.busclk" - switch ":clockblockcell.clk_bus_glb==>:udb@[UDB=(3,5)]:dp_wrapper:datapath.busclk" - term ":udb@[UDB=(3,5)]:dp_wrapper:datapath.busclk" - switch ":clockblockcell.clk_bus_glb==>:udb@[UDB=(2,5)]:dp_wrapper:datapath.busclk" - term ":udb@[UDB=(2,5)]:dp_wrapper:datapath.busclk" + switch ":clockblockcell.clk_bus_glb==>:udb@[UDB=(3,5)]:controlcell.busclk" + term ":udb@[UDB=(3,5)]:controlcell.busclk" + switch ":clockblockcell.clk_bus_glb==>:udb@[UDB=(2,0)]:clockreset:clk_sc_mux.in_9" + switch ":udb@[UDB=(2,0)]:clockreset:clk_sc_mux.sc_clk==>:udb@[UDB=(2,0)]:statusicell.clock" + term ":udb@[UDB=(2,0)]:statusicell.clock" + switch ":clockblockcell.clk_bus_glb==>:udb@[UDB=(2,0)]:clockreset:clk_pld0_mux.in_9" + switch ":udb@[UDB=(2,0)]:clockreset:clk_pld0_mux.pld0_clk==>:udb@[UDB=(2,0)]:pld0:mc3.clock_0" + term ":udb@[UDB=(2,0)]:pld0:mc3.clock_0" + switch ":clockblockcell.clk_bus_glb==>:udb@[UDB=(2,0)]:controlcell.busclk" + term ":udb@[UDB=(2,0)]:controlcell.busclk" + switch ":clockblockcell.clk_bus_glb==>:udb@[UDB=(2,0)]:clockreset:clk_dp_mux.in_9" + switch ":udb@[UDB=(2,0)]:clockreset:clk_dp_mux.dp_clk==>:udb@[UDB=(2,0)]:dp_wrapper:datapath.clock" + term ":udb@[UDB=(2,0)]:dp_wrapper:datapath.clock" + switch ":clockblockcell.clk_bus_glb==>:udb@[UDB=(2,0)]:dp_wrapper:datapath.busclk" + term ":udb@[UDB=(2,0)]:dp_wrapper:datapath.busclk" + switch ":clockblockcell.clk_bus_glb==>:udb@[UDB=(3,0)]:clockreset:clk_dp_mux.in_9" + switch ":udb@[UDB=(3,0)]:clockreset:clk_dp_mux.dp_clk==>:udb@[UDB=(3,0)]:dp_wrapper:datapath.clock" + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.clock" + switch ":clockblockcell.clk_bus_glb==>:udb@[UDB=(3,0)]:dp_wrapper:datapath.busclk" + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.busclk" + switch ":udb@[UDB=(2,0)]:clockreset:clk_pld0_mux.pld0_clk==>:udb@[UDB=(2,0)]:pld0:mc0.clock_0" + term ":udb@[UDB=(2,0)]:pld0:mc0.clock_0" + switch ":udb@[UDB=(2,0)]:clockreset:clk_pld0_mux.pld0_clk==>:udb@[UDB=(2,0)]:pld0:mc1.clock_0" + term ":udb@[UDB=(2,0)]:pld0:mc1.clock_0" + switch ":clockblockcell.clk_bus_glb==>:udb@[UDB=(2,3)]:dp_wrapper:datapath.busclk" + term ":udb@[UDB=(2,3)]:dp_wrapper:datapath.busclk" + switch ":clockblockcell.clk_bus_glb==>:udb@[UDB=(3,3)]:dp_wrapper:datapath.busclk" + term ":udb@[UDB=(3,3)]:dp_wrapper:datapath.busclk" end ClockBlock_BUS_CLK +net Net_191 + term ":clockblockcell.dclk_glb_1" + switch ":clockblockcell.dclk_glb_1==>:udb@[UDB=(2,3)]:clockreset:clk_dp_mux.in_1" + switch ":udb@[UDB=(2,3)]:clockreset:clk_dp_mux.dp_clk==>:udb@[UDB=(2,3)]:dp_wrapper:datapath.clock" + term ":udb@[UDB=(2,3)]:dp_wrapper:datapath.clock" + switch ":clockblockcell.dclk_glb_1==>:udb@[UDB=(2,3)]:clockreset:clk_sc_mux.in_1" + switch ":udb@[UDB=(2,3)]:clockreset:clk_sc_mux.sc_clk==>:udb@[UDB=(2,3)]:statusicell.clock" + term ":udb@[UDB=(2,3)]:statusicell.clock" + switch ":clockblockcell.dclk_glb_1==>:udb@[UDB=(3,3)]:clockreset:clk_dp_mux.in_1" + switch ":udb@[UDB=(3,3)]:clockreset:clk_dp_mux.dp_clk==>:udb@[UDB=(3,3)]:dp_wrapper:datapath.clock" + term ":udb@[UDB=(3,3)]:dp_wrapper:datapath.clock" + switch ":clockblockcell.dclk_glb_1==>:udb@[UDB=(2,3)]:clockreset:clk_pld1_mux.in_1" + switch ":udb@[UDB=(2,3)]:clockreset:clk_pld1_mux.pld1_clk==>:udb@[UDB=(2,3)]:pld1:mc0.clock_0" + term ":udb@[UDB=(2,3)]:pld1:mc0.clock_0" + switch ":clockblockcell.dclk_glb_1==>:udb@[UDB=(2,3)]:clockreset:clk_pld0_mux.in_1" + switch ":udb@[UDB=(2,3)]:clockreset:clk_pld0_mux.pld0_clk==>:udb@[UDB=(2,3)]:pld0:mc1.clock_0" + term ":udb@[UDB=(2,3)]:pld0:mc1.clock_0" + switch ":clockblockcell.dclk_glb_1==>:udb@[UDB=(3,0)]:clockreset:clk_pld1_mux.in_1" + switch ":udb@[UDB=(3,0)]:clockreset:clk_pld1_mux.pld1_clk==>:udb@[UDB=(3,0)]:pld1:mc0.clock_0" + term ":udb@[UDB=(3,0)]:pld1:mc0.clock_0" + switch ":clockblockcell.dclk_glb_1==>:udb@[UDB=(3,3)]:clockreset:clk_pld0_mux.in_1" + switch ":udb@[UDB=(3,3)]:clockreset:clk_pld0_mux.pld0_clk==>:udb@[UDB=(3,3)]:pld0:mc1.clock_0" + term ":udb@[UDB=(3,3)]:pld0:mc1.clock_0" + switch ":udb@[UDB=(3,3)]:clockreset:clk_pld0_mux.pld0_clk==>:udb@[UDB=(3,3)]:pld0:mc0.clock_0" + term ":udb@[UDB=(3,3)]:pld0:mc0.clock_0" +end Net_191 net mywire_1_0 - term ":udb@[UDB=(3,3)]:controlcell.control_0" - switch ":udb@[UDB=(3,3)]:controlcell.control_0==>:udb@[UDB=(3,3)]:controlcell_control_0_permute.in_0" - switch ":udb@[UDB=(3,3)]:controlcell_control_0_permute.controlcell_control_0==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v105" - switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v105" - switch ":udbswitch@[UDB=(2,3)][side=top]:105,73" - switch ":udbswitch@[UDB=(2,3)][side=top]:7,73_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v7" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v7==>:udb@[UDB=(3,3)]:pld0:input_permute.input_3" - switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc3_main_2==>:udb@[UDB=(3,3)]:pld0:mc3.main_2" - term ":udb@[UDB=(3,3)]:pld0:mc3.main_2" - switch ":udbswitch@[UDB=(2,3)][side=top]:55,73_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v55" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v55==>:udb@[UDB=(3,3)]:pld1:input_permute.input_4" - switch ":udb@[UDB=(3,3)]:pld1:input_permute.mc0_main_2==>:udb@[UDB=(3,3)]:pld1:mc0.main_2" - term ":udb@[UDB=(3,3)]:pld1:mc0.main_2" - switch ":udb@[UDB=(3,3)]:pld1:input_permute.mc1_main_2==>:udb@[UDB=(3,3)]:pld1:mc1.main_2" - term ":udb@[UDB=(3,3)]:pld1:mc1.main_2" - switch ":udb@[UDB=(3,3)]:pld1:input_permute.mc2_main_2==>:udb@[UDB=(3,3)]:pld1:mc2.main_2" - term ":udb@[UDB=(3,3)]:pld1:mc2.main_2" + term ":udb@[UDB=(3,5)]:controlcell.control_0" + switch ":udb@[UDB=(3,5)]:controlcell.control_0==>:udb@[UDB=(3,5)]:controlcell_control_0_permute.in_0" + switch ":udb@[UDB=(3,5)]:controlcell_control_0_permute.controlcell_control_0==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v105" + switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v105" + switch ":udbswitch@[UDB=(2,5)][side=top]:105,42" + switch ":udbswitch@[UDB=(2,5)][side=top]:23,42_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v23" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v23==>:udb@[UDB=(3,5)]:pld0:input_permute.input_11" + switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc3_main_3==>:udb@[UDB=(3,5)]:pld0:mc3.main_3" + term ":udb@[UDB=(3,5)]:pld0:mc3.main_3" + switch ":udbswitch@[UDB=(2,5)][side=top]:105,73" + switch ":udbswitch@[UDB=(2,5)][side=top]:55,73_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v55" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v55==>:udb@[UDB=(3,5)]:pld1:input_permute.input_4" + switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc0_main_3==>:udb@[UDB=(3,5)]:pld1:mc0.main_3" + term ":udb@[UDB=(3,5)]:pld1:mc0.main_3" + switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc1_main_3==>:udb@[UDB=(3,5)]:pld1:mc1.main_3" + term ":udb@[UDB=(3,5)]:pld1:mc1.main_3" + switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc2_main_3==>:udb@[UDB=(3,5)]:pld1:mc2.main_3" + term ":udb@[UDB=(3,5)]:pld1:mc2.main_3" + switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc3_main_3==>:udb@[UDB=(3,5)]:pld1:mc3.main_3" + term ":udb@[UDB=(3,5)]:pld1:mc3.main_3" end mywire_1_0 net mywire_1_1 - term ":udb@[UDB=(3,3)]:controlcell.control_1" - switch ":udb@[UDB=(3,3)]:controlcell.control_1==>:udb@[UDB=(3,3)]:controlcell_control_1_permute.in_0" - switch ":udb@[UDB=(3,3)]:controlcell_control_1_permute.controlcell_control_1==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v107" - switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v107" - switch ":udbswitch@[UDB=(2,3)][side=top]:107,79" - switch ":udbswitch@[UDB=(2,3)][side=top]:19,79_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v19" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v19==>:udb@[UDB=(3,3)]:pld0:input_permute.input_9" - switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc3_main_1==>:udb@[UDB=(3,3)]:pld0:mc3.main_1" - term ":udb@[UDB=(3,3)]:pld0:mc3.main_1" - switch ":udbswitch@[UDB=(2,3)][side=top]:107,60" - switch ":udbswitch@[UDB=(2,3)][side=top]:59,60_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v59" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v59==>:udb@[UDB=(3,3)]:pld1:input_permute.input_2" - switch ":udb@[UDB=(3,3)]:pld1:input_permute.mc0_main_1==>:udb@[UDB=(3,3)]:pld1:mc0.main_1" - term ":udb@[UDB=(3,3)]:pld1:mc0.main_1" - switch ":udb@[UDB=(3,3)]:pld1:input_permute.mc1_main_1==>:udb@[UDB=(3,3)]:pld1:mc1.main_1" - term ":udb@[UDB=(3,3)]:pld1:mc1.main_1" - switch ":udb@[UDB=(3,3)]:pld1:input_permute.mc2_main_1==>:udb@[UDB=(3,3)]:pld1:mc2.main_1" - term ":udb@[UDB=(3,3)]:pld1:mc2.main_1" + term ":udb@[UDB=(3,5)]:controlcell.control_1" + switch ":udb@[UDB=(3,5)]:controlcell.control_1==>:udb@[UDB=(3,5)]:controlcell_control_1_permute.in_0" + switch ":udb@[UDB=(3,5)]:controlcell_control_1_permute.controlcell_control_1==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v107" + switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v107" + switch ":udbswitch@[UDB=(2,5)][side=top]:107,79" + switch ":udbswitch@[UDB=(2,5)][side=top]:19,79_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v19" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v19==>:udb@[UDB=(3,5)]:pld0:input_permute.input_9" + switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc3_main_2==>:udb@[UDB=(3,5)]:pld0:mc3.main_2" + term ":udb@[UDB=(3,5)]:pld0:mc3.main_2" + switch ":udbswitch@[UDB=(2,5)][side=top]:107,60" + switch ":udbswitch@[UDB=(2,5)][side=top]:59,60_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v59" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v59==>:udb@[UDB=(3,5)]:pld1:input_permute.input_2" + switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc0_main_2==>:udb@[UDB=(3,5)]:pld1:mc0.main_2" + term ":udb@[UDB=(3,5)]:pld1:mc0.main_2" + switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc1_main_2==>:udb@[UDB=(3,5)]:pld1:mc1.main_2" + term ":udb@[UDB=(3,5)]:pld1:mc1.main_2" + switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc2_main_2==>:udb@[UDB=(3,5)]:pld1:mc2.main_2" + term ":udb@[UDB=(3,5)]:pld1:mc2.main_2" + switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc3_main_2==>:udb@[UDB=(3,5)]:pld1:mc3.main_2" + term ":udb@[UDB=(3,5)]:pld1:mc3.main_2" end mywire_1_1 +net mywire_1_2 + term ":udb@[UDB=(3,5)]:controlcell.control_2" + switch ":udb@[UDB=(3,5)]:controlcell.control_2==>:udb@[UDB=(3,5)]:controlcell_control_2_permute.in_0" + switch ":udb@[UDB=(3,5)]:controlcell_control_2_permute.controlcell_control_2==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v109" + switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v109" + switch ":udbswitch@[UDB=(2,5)][side=top]:109,85" + switch ":udbswitch@[UDB=(2,5)][side=top]:21,85_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v21" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v21==>:udb@[UDB=(3,5)]:pld0:input_permute.input_10" + switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc3_main_1==>:udb@[UDB=(3,5)]:pld0:mc3.main_1" + term ":udb@[UDB=(3,5)]:pld0:mc3.main_1" + switch ":udbswitch@[UDB=(2,5)][side=top]:109,54" + switch ":udbswitch@[UDB=(2,5)][side=top]:61,54_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v61" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v61==>:udb@[UDB=(3,5)]:pld1:input_permute.input_1" + switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc0_main_1==>:udb@[UDB=(3,5)]:pld1:mc0.main_1" + term ":udb@[UDB=(3,5)]:pld1:mc0.main_1" + switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc1_main_1==>:udb@[UDB=(3,5)]:pld1:mc1.main_1" + term ":udb@[UDB=(3,5)]:pld1:mc1.main_1" + switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc2_main_1==>:udb@[UDB=(3,5)]:pld1:mc2.main_1" + term ":udb@[UDB=(3,5)]:pld1:mc2.main_1" + switch ":udb@[UDB=(3,5)]:pld1:input_permute.mc3_main_1==>:udb@[UDB=(3,5)]:pld1:mc3.main_1" + term ":udb@[UDB=(3,5)]:pld1:mc3.main_1" +end mywire_1_2 net \UART_1:BUART:tx_counter_dp\ - term ":udb@[UDB=(2,5)]:dp_wrapper:datapath.cl1_comb" - switch ":udb@[UDB=(2,5)]:dp_wrapper:datapath.cl1_comb==>:udb@[UDB=(2,5)]:dp_wrapper:output_permute.cl1_comb" - switch ":udb@[UDB=(2,5)]:dp_wrapper:output_permute.outs_5==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v86" - switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v86" - switch ":udbswitch@[UDB=(2,5)][side=top]:86,5" - switch ":udbswitch@[UDB=(2,5)][side=top]:22,5_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v22" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v22==>:udb@[UDB=(2,5)]:pld0:input_permute.input_11" - switch ":udb@[UDB=(2,5)]:pld0:input_permute.mc2_main_4==>:udb@[UDB=(2,5)]:pld0:mc2.main_4" - term ":udb@[UDB=(2,5)]:pld0:mc2.main_4" - switch ":udbswitch@[UDB=(2,5)][side=top]:9,5_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v9" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v9==>:udb@[UDB=(3,5)]:pld0:input_permute.input_4" - switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc1_main_4==>:udb@[UDB=(3,5)]:pld0:mc1.main_4" - term ":udb@[UDB=(3,5)]:pld0:mc1.main_4" - switch ":udb@[UDB=(3,5)]:pld0:input_permute.mc0_main_6==>:udb@[UDB=(3,5)]:pld0:mc0.main_6" - term ":udb@[UDB=(3,5)]:pld0:mc0.main_6" + term ":udb@[UDB=(3,3)]:dp_wrapper:datapath.cl1_comb" + switch ":udb@[UDB=(3,3)]:dp_wrapper:datapath.cl1_comb==>:udb@[UDB=(3,3)]:dp_wrapper:output_permute.cl1_comb" + switch ":udb@[UDB=(3,3)]:dp_wrapper:output_permute.outs_4==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v85" + switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v85" + switch ":udbswitch@[UDB=(2,3)][side=top]:85,32" + switch ":hvswitch@[UDB=(2,2)][side=left]:hseg_32_b" + switch ":hvswitch@[UDB=(2,1)][side=left]:hseg_32_b" + switch ":hvswitch@[UDB=(2,0)][side=left]:hseg_32_b" + switch ":udbswitch@[UDB=(2,0)][side=top]:61,32_f" + switch "IStub-:udbswitch@[UDB=(2,0)][side=top]:v61" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v61==>:udb@[UDB=(3,0)]:pld1:input_permute.input_1" + switch ":udb@[UDB=(3,0)]:pld1:input_permute.mc0_main_4==>:udb@[UDB=(3,0)]:pld1:mc0.main_4" + term ":udb@[UDB=(3,0)]:pld1:mc0.main_4" + switch ":udbswitch@[UDB=(2,3)][side=top]:85,80" + switch ":udbswitch@[UDB=(2,3)][side=top]:13,80_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v13" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v13==>:udb@[UDB=(3,3)]:pld0:input_permute.input_6" + switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc1_main_4==>:udb@[UDB=(3,3)]:pld0:mc1.main_4" + term ":udb@[UDB=(3,3)]:pld0:mc1.main_4" + switch ":udb@[UDB=(3,3)]:pld0:input_permute.mc0_main_6==>:udb@[UDB=(3,3)]:pld0:mc0.main_6" + term ":udb@[UDB=(3,3)]:pld0:mc0.main_6" end \UART_1:BUART:tx_counter_dp\ net \UART_1:BUART:tx_fifo_notfull\ - term ":udb@[UDB=(3,5)]:dp_wrapper:datapath.f0_bus_stat_comb" - switch ":udb@[UDB=(3,5)]:dp_wrapper:datapath.f0_bus_stat_comb==>:udb@[UDB=(3,5)]:dp_wrapper:output_permute.f0_bus_stat_comb" - switch ":udb@[UDB=(3,5)]:dp_wrapper:output_permute.outs_1==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v79" - switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v79" - switch ":udbswitch@[UDB=(2,5)][side=top]:79,24" - switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_24_b" - switch ":udbswitch@[UDB=(2,4)][side=top]:95,24_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v95" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v95==>:udb@[UDB=(3,4)]:statusicell.status_3" - term ":udb@[UDB=(3,4)]:statusicell.status_3" - switch ":udbswitch@[UDB=(2,4)][side=top]:17,24_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v17" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v17==>:udb@[UDB=(3,4)]:pld0:input_permute.input_8" - switch ":udb@[UDB=(3,4)]:pld0:input_permute.mc2_main_0==>:udb@[UDB=(3,4)]:pld0:mc2.main_0" - term ":udb@[UDB=(3,4)]:pld0:mc2.main_0" + term ":udb@[UDB=(2,3)]:dp_wrapper:datapath.f0_bus_stat_comb" + switch ":udb@[UDB=(2,3)]:dp_wrapper:datapath.f0_bus_stat_comb==>:udb@[UDB=(2,3)]:dp_wrapper:output_permute.f0_bus_stat_comb" + switch ":udb@[UDB=(2,3)]:dp_wrapper:output_permute.outs_1==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v78" + switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v78" + switch ":udbswitch@[UDB=(2,3)][side=top]:78,25" + switch ":udbswitch@[UDB=(2,3)][side=top]:94,25_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v94" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v94==>:udb@[UDB=(2,3)]:statusicell.status_3" + term ":udb@[UDB=(2,3)]:statusicell.status_3" + switch ":udbswitch@[UDB=(2,3)][side=top]:54,25_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v54" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v54==>:udb@[UDB=(2,3)]:pld1:input_permute.input_4" + switch ":udb@[UDB=(2,3)]:pld1:input_permute.mc3_main_0==>:udb@[UDB=(2,3)]:pld1:mc3.main_0" + term ":udb@[UDB=(2,3)]:pld1:mc3.main_0" end \UART_1:BUART:tx_fifo_notfull\ +net ClockBlock_1k + term ":clockblockcell.clk_1k" + switch ":clockblockcell.clk_1k==>Stub-:dsiswitch_bottom@[DSI=(1,2)][side=bottom]:dsihc_bottom:v32+:dsiswitch_bottom@[DSI=(1,2)][side=bottom]:dsihc_bottom:v34" + switch "OStub-:dsiswitch_bottom@[DSI=(1,2)][side=bottom]:dsihc_bottom:v32+:dsiswitch_bottom@[DSI=(1,2)][side=bottom]:dsihc_bottom:v34" + switch ":dsiswitch_bottom@[DSI=(1,2)][side=bottom]:dsihc_bottom:32,47" + switch ":hvswitch@[UDB=(3,1)][side=left]:27,47_f" + switch ":hvswitch@[UDB=(2,1)][side=left]:vseg_27_bot_f" + switch ":hvswitch@[UDB=(2,1)][side=left]:27,22_b" + switch ":hvswitch@[UDB=(2,1)][side=left]:hseg_22_b" + switch ":hvswitch@[UDB=(2,0)][side=left]:hseg_22_b" + switch ":udbswitch@[UDB=(2,0)][side=top]:89,22_f" + switch "IStub-:udbswitch@[UDB=(2,0)][side=top]:v89" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v89==>:udb@[UDB=(3,0)]:sync_wrapper:sync0.in" + term ":udb@[UDB=(3,0)]:sync_wrapper:sync0.in" +end ClockBlock_1k net Net_20 term ":ioport0:pin0.fb" switch ":ioport0:pin0.fb==>Stub-:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v0+:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v2" switch "OStub-:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v0+:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v2" - switch ":dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:0,67" - switch ":hvswitch@[UDB=(0,4)][side=left]:hseg_67_b" - switch ":hvswitch@[UDB=(0,3)][side=left]:19,67_f" - switch ":hvswitch@[UDB=(1,3)][side=left]:vseg_19_top_f" - switch ":hvswitch@[UDB=(2,3)][side=left]:vseg_19_top_f" - switch ":hvswitch@[UDB=(2,3)][side=left]:19,77_b" + switch ":dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:2,85" + switch ":hvswitch@[UDB=(0,4)][side=left]:hseg_85_b" + switch ":hvswitch@[UDB=(0,3)][side=left]:18,85_f" + switch ":hvswitch@[UDB=(1,3)][side=left]:vseg_18_top_f" + switch ":hvswitch@[UDB=(2,3)][side=left]:vseg_18_top_f" + switch ":hvswitch@[UDB=(2,3)][side=left]:18,77_b" switch ":udbswitch@[UDB=(2,4)][side=top]:70,77_f" switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v70" switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v70==>:udb@[UDB=(2,4)]:dp_wrapper:input_permute.ina_3" @@ -1091,118 +1338,122 @@ net Net_20 term ":udb@[UDB=(2,4)]:dp_wrapper:datapath.route_si" end Net_20 net Net_234 - term ":udb@[UDB=(3,4)]:pld0:mc1.q" - switch ":udb@[UDB=(3,4)]:pld0:mc1.q==>:udb@[UDB=(3,4)]:pld0:output_permute0.q_1" - switch ":udb@[UDB=(3,4)]:pld0:output_permute0.output_0==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v25" - switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v25" - switch ":udbswitch@[UDB=(2,4)][side=top]:25,75" - switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_75_f" - switch ":hvswitch@[UDB=(2,4)][side=left]:25,75_f" - switch ":hvswitch@[UDB=(2,4)][side=left]:vseg_25_bot_b" - switch ":hvswitch@[UDB=(3,4)][side=left]:25,80_b" - switch ":dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:98,80_f" - switch "IStub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v100+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v102+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v98" - switch "Stub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v100+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v102+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v98==>:ioport3:inputs2_mux.in_2" + term ":udb@[UDB=(3,4)]:pld0:mc2.q" + switch ":udb@[UDB=(3,4)]:pld0:mc2.q==>:udb@[UDB=(3,4)]:pld0:output_permute2.q_2" + switch ":udb@[UDB=(3,4)]:pld0:output_permute2.output_2==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v29" + switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v29" + switch ":udbswitch@[UDB=(2,4)][side=top]:29,89" + switch ":hvswitch@[UDB=(2,3)][side=left]:23,89_f" + switch ":hvswitch@[UDB=(3,3)][side=left]:vseg_23_top_f" + switch ":hvswitch@[UDB=(3,3)][side=left]:23,81_b" + switch ":hvswitch@[UDB=(3,4)][side=left]:hseg_81_f" + switch ":dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:99,81_f" + switch "IStub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v101+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v103+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v99" + switch "Stub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v101+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v103+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v99==>:ioport3:inputs2_mux.in_3" switch ":ioport3:inputs2_mux.pin7__pin_input==>:ioport3:pin7.pin_input" term ":ioport3:pin7.pin_input" end Net_234 net Net_30 - term ":udb@[UDB=(3,3)]:pld0:mc2.q" - switch ":udb@[UDB=(3,3)]:pld0:mc2.q==>:udb@[UDB=(3,3)]:pld0:output_permute0.q_2" - switch ":udb@[UDB=(3,3)]:pld0:output_permute0.output_0==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v25" - switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v25" - switch ":udbswitch@[UDB=(2,3)][side=top]:25,20" - switch ":hvswitch@[UDB=(2,3)][side=left]:14,20_f" - switch ":hvswitch@[UDB=(1,3)][side=left]:vseg_14_bot_f" - switch ":hvswitch@[UDB=(0,3)][side=left]:vseg_14_bot_f" - switch ":hvswitch@[UDB=(0,3)][side=left]:14,70_b" - switch ":hvswitch@[UDB=(0,3)][side=left]:hseg_70_f" - switch ":hvswitch@[UDB=(0,4)][side=left]:hseg_70_f" - switch ":dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:97,70_f" - switch "IStub-:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v93+:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v95+:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v97" - switch "Stub-:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v93+:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v95+:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v97==>:ioport0:inputs2_mux.in_1" + term ":udb@[UDB=(3,5)]:pld0:mc2.q" + switch ":udb@[UDB=(3,5)]:pld0:mc2.q==>:udb@[UDB=(3,5)]:pld0:output_permute0.q_2" + switch ":udb@[UDB=(3,5)]:pld0:output_permute0.output_0==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v25" + switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v25" + switch ":udbswitch@[UDB=(2,5)][side=top]:25,77" + switch ":hvswitch@[UDB=(2,5)][side=left]:3,77_f" + switch ":hvswitch@[UDB=(2,5)][side=left]:vseg_3_top_b" + switch ":hvswitch@[UDB=(1,5)][side=left]:vseg_3_top_b" + switch ":hvswitch@[UDB=(0,5)][side=left]:3,7_b" + switch ":dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:92,7_f" + switch "IStub-:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v92+:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v94+:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v96" + switch "Stub-:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v92+:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v94+:dsiswitch_top@[DSI=(0,5)][side=top]:dsihc_top:v96==>:ioport0:inputs2_mux.in_0" switch ":ioport0:inputs2_mux.pin5__pin_input==>:ioport0:pin5.pin_input" term ":ioport0:pin5.pin_input" end Net_30 net Net_419 - term ":udb@[UDB=(3,3)]:pld0:mc3.q" - switch ":udb@[UDB=(3,3)]:pld0:mc3.q==>:udb@[UDB=(3,3)]:pld0:output_permute3.q_3" - switch ":udb@[UDB=(3,3)]:pld0:output_permute3.output_3==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v31" - switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v31" - switch ":udbswitch@[UDB=(2,3)][side=top]:31,48" - switch ":hvswitch@[UDB=(2,3)][side=left]:12,48_f" - switch ":hvswitch@[UDB=(2,3)][side=left]:vseg_12_bot_b" - switch ":hvswitch@[UDB=(3,3)][side=left]:12,84_b" - switch ":hvswitch@[UDB=(3,3)][side=left]:hseg_84_f" - switch ":hvswitch@[UDB=(3,4)][side=left]:hseg_84_f" - switch ":dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:91,84_f" - switch "IStub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v87+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v89+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v91" - switch "Stub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v87+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v89+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v91==>:ioport3:inputs1_mux.in_3" + term ":udb@[UDB=(3,5)]:pld0:mc3.q" + switch ":udb@[UDB=(3,5)]:pld0:mc3.q==>:udb@[UDB=(3,5)]:pld0:output_permute3.q_3" + switch ":udb@[UDB=(3,5)]:pld0:output_permute3.output_3==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v31" + switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v31" + switch ":udbswitch@[UDB=(2,5)][side=top]:31,93" + switch ":hvswitch@[UDB=(2,5)][side=left]:12,93_f" + switch ":hvswitch@[UDB=(2,5)][side=left]:vseg_12_bot_b" + switch ":hvswitch@[UDB=(3,5)][side=left]:12,77_b" + switch ":dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:86,77_f" + switch "IStub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v86+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v88+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v90" + switch "Stub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v86+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v88+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v90==>:ioport3:inputs1_mux.in_2" switch ":ioport3:inputs1_mux.pin0__pin_input==>:ioport3:pin0.pin_input" term ":ioport3:pin0.pin_input" end Net_419 net Net_422 - term ":udb@[UDB=(3,3)]:pld1:mc0.q" - switch ":udb@[UDB=(3,3)]:pld1:mc0.q==>:udb@[UDB=(3,3)]:pld1:output_permute1.q_0" - switch ":udb@[UDB=(3,3)]:pld1:output_permute1.output_1==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v37" - switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v37" - switch ":udbswitch@[UDB=(2,3)][side=top]:37,15" - switch ":hvswitch@[UDB=(2,3)][side=left]:13,15_f" - switch ":hvswitch@[UDB=(2,3)][side=left]:vseg_13_bot_b" - switch ":hvswitch@[UDB=(3,3)][side=left]:13,23_b" - switch ":hvswitch@[UDB=(3,3)][side=left]:hseg_23_f" - switch ":hvswitch@[UDB=(3,4)][side=left]:hseg_23_f" - switch ":dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:81,23_f" - switch "IStub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v81+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v83+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v85" - switch "Stub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v81+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v83+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v85==>:ioport3:inputs1_mux.in_1" + term ":udb@[UDB=(3,5)]:pld1:mc0.q" + switch ":udb@[UDB=(3,5)]:pld1:mc0.q==>:udb@[UDB=(3,5)]:pld1:output_permute2.q_0" + switch ":udb@[UDB=(3,5)]:pld1:output_permute2.output_2==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v35" + switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v35" + switch ":udbswitch@[UDB=(2,5)][side=top]:35,82" + switch ":hvswitch@[UDB=(2,4)][side=left]:18,82_f" + switch ":hvswitch@[UDB=(3,4)][side=left]:vseg_18_top_f" + switch ":hvswitch@[UDB=(3,4)][side=left]:18,23_b" + switch ":dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:80,23_f" + switch "IStub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v80+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v82+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v84" + switch "Stub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v80+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v82+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v84==>:ioport3:inputs1_mux.in_0" switch ":ioport3:inputs1_mux.pin1__pin_input==>:ioport3:pin1.pin_input" term ":ioport3:pin1.pin_input" end Net_422 net Net_425 - term ":udb@[UDB=(3,3)]:pld1:mc1.q" - switch ":udb@[UDB=(3,3)]:pld1:mc1.q==>:udb@[UDB=(3,3)]:pld1:output_permute2.q_1" - switch ":udb@[UDB=(3,3)]:pld1:output_permute2.output_2==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v35" - switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v35" - switch ":udbswitch@[UDB=(2,3)][side=top]:35,65" - switch ":hvswitch@[UDB=(2,3)][side=left]:5,65_f" - switch ":hvswitch@[UDB=(3,3)][side=left]:vseg_5_top_f" - switch ":hvswitch@[UDB=(3,3)][side=left]:5,22_b" - switch ":hvswitch@[UDB=(3,3)][side=left]:hseg_22_f" - switch ":hvswitch@[UDB=(3,4)][side=left]:hseg_22_f" - switch ":dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:88,22_f" - switch "IStub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v86+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v88+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v90" - switch "Stub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v86+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v88+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v90==>:ioport3:inputs1_mux.in_2" + term ":udb@[UDB=(3,5)]:pld1:mc1.q" + switch ":udb@[UDB=(3,5)]:pld1:mc1.q==>:udb@[UDB=(3,5)]:pld1:output_permute3.q_1" + switch ":udb@[UDB=(3,5)]:pld1:output_permute3.output_3==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v33" + switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v33" + switch ":udbswitch@[UDB=(2,5)][side=top]:33,71" + switch ":hvswitch@[UDB=(2,4)][side=left]:25,71_f" + switch ":hvswitch@[UDB=(2,4)][side=left]:vseg_25_bot_b" + switch ":hvswitch@[UDB=(3,4)][side=left]:25,95_b" + switch ":dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:81,95_f" + switch "IStub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v81+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v83+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v85" + switch "Stub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v81+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v83+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v85==>:ioport3:inputs1_mux.in_1" switch ":ioport3:inputs1_mux.pin3__pin_input==>:ioport3:pin3.pin_input" term ":ioport3:pin3.pin_input" end Net_425 net Net_428 - term ":udb@[UDB=(3,3)]:pld1:mc2.q" - switch ":udb@[UDB=(3,3)]:pld1:mc2.q==>:udb@[UDB=(3,3)]:pld1:output_permute0.q_2" - switch ":udb@[UDB=(3,3)]:pld1:output_permute0.output_0==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v39" - switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v39" - switch ":udbswitch@[UDB=(2,3)][side=top]:39,53" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_53_f" - switch ":hvswitch@[UDB=(2,4)][side=left]:15,53_f" - switch ":hvswitch@[UDB=(2,4)][side=left]:vseg_15_bot_b" - switch ":hvswitch@[UDB=(3,4)][side=left]:15,11_b" - switch ":hvswitch@[UDB=(3,4)][side=left]:hseg_11_f" - switch ":dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:84,11_f" - switch "IStub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v80+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v82+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v84" - switch "Stub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v80+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v82+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v84==>:ioport3:inputs1_mux.in_0" + term ":udb@[UDB=(3,5)]:pld1:mc2.q" + switch ":udb@[UDB=(3,5)]:pld1:mc2.q==>:udb@[UDB=(3,5)]:pld1:output_permute1.q_2" + switch ":udb@[UDB=(3,5)]:pld1:output_permute1.output_1==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v37" + switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v37" + switch ":udbswitch@[UDB=(2,5)][side=top]:37,88" + switch ":hvswitch@[UDB=(2,5)][side=left]:15,88_f" + switch ":hvswitch@[UDB=(2,5)][side=left]:vseg_15_bot_b" + switch ":hvswitch@[UDB=(3,5)][side=left]:15,94_b" + switch ":dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:89,94_f" + switch "IStub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v87+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v89+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v91" + switch "Stub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v87+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v89+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v91==>:ioport3:inputs1_mux.in_3" switch ":ioport3:inputs1_mux.pin2__pin_input==>:ioport3:pin2.pin_input" term ":ioport3:pin2.pin_input" end Net_428 +net Net_585 + term ":udb@[UDB=(3,5)]:pld1:mc3.q" + switch ":udb@[UDB=(3,5)]:pld1:mc3.q==>:udb@[UDB=(3,5)]:pld1:output_permute0.q_3" + switch ":udb@[UDB=(3,5)]:pld1:output_permute0.output_0==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v39" + switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v39" + switch ":udbswitch@[UDB=(2,5)][side=top]:39,91" + switch ":hvswitch@[UDB=(2,4)][side=left]:27,91_f" + switch ":hvswitch@[UDB=(2,4)][side=left]:vseg_27_bot_b" + switch ":hvswitch@[UDB=(3,4)][side=left]:27,76_b" + switch ":dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:95,76_f" + switch "IStub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v93+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v95+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v97" + switch "Stub-:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v93+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v95+:dsiswitch_bottom@[DSI=(1,5)][side=bottom]:dsihc_bottom:v97==>:ioport3:inputs2_mux.in_1" + switch ":ioport3:inputs2_mux.pin4__pin_input==>:ioport3:pin4.pin_input" + term ":ioport3:pin4.pin_input" +end Net_585 net \SPIM:BSPIM:rx_status_5\ term ":udb@[UDB=(2,4)]:dp_wrapper:datapath.f1_bus_stat_comb" switch ":udb@[UDB=(2,4)]:dp_wrapper:datapath.f1_bus_stat_comb==>:udb@[UDB=(2,4)]:dp_wrapper:output_permute.f1_bus_stat_comb" switch ":udb@[UDB=(2,4)]:dp_wrapper:output_permute.outs_3==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v82" switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v82" - switch ":udbswitch@[UDB=(2,4)][side=top]:82,41" - switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_41_f" - switch ":udbswitch@[UDB=(2,5)][side=top]:98,41_f" - switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v98" - switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v98==>:udb@[UDB=(2,5)]:statusicell.status_5" - term ":udb@[UDB=(2,5)]:statusicell.status_5" + switch ":udbswitch@[UDB=(2,4)][side=top]:82,61" + switch ":udbswitch@[UDB=(2,4)][side=top]:99,61_f" + switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v99" + switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v99==>:udb@[UDB=(3,4)]:statusicell.status_5" + term ":udb@[UDB=(3,4)]:statusicell.status_5" end \SPIM:BSPIM:rx_status_5\ net \SPIM:BSPIM:tx_status_2\ term ":udb@[UDB=(2,4)]:dp_wrapper:datapath.f0_bus_stat_comb" @@ -1210,31 +1461,108 @@ net \SPIM:BSPIM:tx_status_2\ switch ":udb@[UDB=(2,4)]:dp_wrapper:output_permute.outs_0==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v76" switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v76" switch ":udbswitch@[UDB=(2,4)][side=top]:76,31" - switch ":hvswitch@[UDB=(2,3)][side=left]:hseg_31_b" - switch ":udbswitch@[UDB=(2,3)][side=top]:92,31_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v92" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v92==>:udb@[UDB=(2,3)]:statusicell.status_2" - term ":udb@[UDB=(2,3)]:statusicell.status_2" + switch ":hvswitch@[UDB=(2,4)][side=left]:hseg_31_f" + switch ":udbswitch@[UDB=(2,5)][side=top]:92,31_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v92" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v92==>:udb@[UDB=(2,5)]:statusicell.status_2" + term ":udb@[UDB=(2,5)]:statusicell.status_2" end \SPIM:BSPIM:tx_status_2\ net \SPIM:BSPIM:tx_status_4\ - term ":udb@[UDB=(2,3)]:pld0:mc2.q" - switch ":udb@[UDB=(2,3)]:pld0:mc2.q==>:udb@[UDB=(2,3)]:pld0:output_permute3.q_2" - switch ":udb@[UDB=(2,3)]:pld0:output_permute3.output_3==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v30" - switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v30" - switch ":udbswitch@[UDB=(2,3)][side=top]:30,43" - switch ":udbswitch@[UDB=(2,3)][side=top]:96,43_f" - switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v96" - switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v96==>:udb@[UDB=(2,3)]:statusicell.status_4" - term ":udb@[UDB=(2,3)]:statusicell.status_4" + term ":udb@[UDB=(2,5)]:pld0:mc2.q" + switch ":udb@[UDB=(2,5)]:pld0:mc2.q==>:udb@[UDB=(2,5)]:pld0:output_permute3.q_2" + switch ":udb@[UDB=(2,5)]:pld0:output_permute3.output_3==>Stub-:udbswitch@[UDB=(2,5)][side=top]:v30" + switch "OStub-:udbswitch@[UDB=(2,5)][side=top]:v30" + switch ":udbswitch@[UDB=(2,5)][side=top]:30,43" + switch ":udbswitch@[UDB=(2,5)][side=top]:96,43_f" + switch "IStub-:udbswitch@[UDB=(2,5)][side=top]:v96" + switch "Stub-:udbswitch@[UDB=(2,5)][side=top]:v96==>:udb@[UDB=(2,5)]:statusicell.status_4" + term ":udb@[UDB=(2,5)]:statusicell.status_4" end \SPIM:BSPIM:tx_status_4\ +net \Timer_1:TimerUDB:status_2\ + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.f0_blk_stat_comb" + switch ":udb@[UDB=(3,0)]:dp_wrapper:datapath.f0_blk_stat_comb==>:udb@[UDB=(3,0)]:dp_wrapper:output_permute.f0_blk_stat_comb" + switch ":udb@[UDB=(3,0)]:dp_wrapper:output_permute.outs_0==>Stub-:udbswitch@[UDB=(2,0)][side=top]:v77" + switch "OStub-:udbswitch@[UDB=(2,0)][side=top]:v77" + switch ":udbswitch@[UDB=(2,0)][side=top]:77,34" + switch ":udbswitch@[UDB=(2,0)][side=top]:92,34_f" + switch "IStub-:udbswitch@[UDB=(2,0)][side=top]:v92" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v92==>:udb@[UDB=(2,0)]:statusicell.status_2" + term ":udb@[UDB=(2,0)]:statusicell.status_2" +end \Timer_1:TimerUDB:status_2\ +net \Timer_1:TimerUDB:status_3\ + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.f0_bus_stat_comb" + switch ":udb@[UDB=(3,0)]:dp_wrapper:datapath.f0_bus_stat_comb==>:udb@[UDB=(3,0)]:dp_wrapper:output_permute.f0_bus_stat_comb" + switch ":udb@[UDB=(3,0)]:dp_wrapper:output_permute.outs_1==>Stub-:udbswitch@[UDB=(2,0)][side=top]:v79" + switch "OStub-:udbswitch@[UDB=(2,0)][side=top]:v79" + switch ":udbswitch@[UDB=(2,0)][side=top]:79,28" + switch ":udbswitch@[UDB=(2,0)][side=top]:94,28_f" + switch "IStub-:udbswitch@[UDB=(2,0)][side=top]:v94" + switch "Stub-:udbswitch@[UDB=(2,0)][side=top]:v94==>:udb@[UDB=(2,0)]:statusicell.status_3" + term ":udb@[UDB=(2,0)]:statusicell.status_3" +end \Timer_1:TimerUDB:status_3\ net \UART_1:BUART:tx_status_2\ - term ":udb@[UDB=(3,4)]:pld0:mc2.q" - switch ":udb@[UDB=(3,4)]:pld0:mc2.q==>:udb@[UDB=(3,4)]:pld0:output_permute2.q_2" - switch ":udb@[UDB=(3,4)]:pld0:output_permute2.output_2==>Stub-:udbswitch@[UDB=(2,4)][side=top]:v29" - switch "OStub-:udbswitch@[UDB=(2,4)][side=top]:v29" - switch ":udbswitch@[UDB=(2,4)][side=top]:29,56" - switch ":udbswitch@[UDB=(2,4)][side=top]:93,56_f" - switch "IStub-:udbswitch@[UDB=(2,4)][side=top]:v93" - switch "Stub-:udbswitch@[UDB=(2,4)][side=top]:v93==>:udb@[UDB=(3,4)]:statusicell.status_2" - term ":udb@[UDB=(3,4)]:statusicell.status_2" + term ":udb@[UDB=(2,3)]:pld1:mc3.q" + switch ":udb@[UDB=(2,3)]:pld1:mc3.q==>:udb@[UDB=(2,3)]:pld1:output_permute1.q_3" + switch ":udb@[UDB=(2,3)]:pld1:output_permute1.output_1==>Stub-:udbswitch@[UDB=(2,3)][side=top]:v36" + switch "OStub-:udbswitch@[UDB=(2,3)][side=top]:v36" + switch ":udbswitch@[UDB=(2,3)][side=top]:36,57" + switch ":udbswitch@[UDB=(2,3)][side=top]:92,57_f" + switch "IStub-:udbswitch@[UDB=(2,3)][side=top]:v92" + switch "Stub-:udbswitch@[UDB=(2,3)][side=top]:v92==>:udb@[UDB=(2,3)]:statusicell.status_2" + term ":udb@[UDB=(2,3)]:statusicell.status_2" end \UART_1:BUART:tx_status_2\ +net \Timer_1:TimerUDB:sT16:timerdp:u0.ce0__sig\ + term ":udb@[UDB=(2,0)]:dp_wrapper:datapath.ce0" + switch ":udb@[UDB=(2,0)]:dp_wrapper:datapath.ce0==>:udb@[UDB=(3,0)]:dp_wrapper:datapath.ce0i" + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.ce0i" +end \Timer_1:TimerUDB:sT16:timerdp:u0.ce0__sig\ +net \Timer_1:TimerUDB:sT16:timerdp:u0.cl0__sig\ + term ":udb@[UDB=(2,0)]:dp_wrapper:datapath.cl0" + switch ":udb@[UDB=(2,0)]:dp_wrapper:datapath.cl0==>:udb@[UDB=(3,0)]:dp_wrapper:datapath.cl0i" + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.cl0i" +end \Timer_1:TimerUDB:sT16:timerdp:u0.cl0__sig\ +net \Timer_1:TimerUDB:sT16:timerdp:u0.ff0__sig\ + term ":udb@[UDB=(2,0)]:dp_wrapper:datapath.ff0" + switch ":udb@[UDB=(2,0)]:dp_wrapper:datapath.ff0==>:udb@[UDB=(3,0)]:dp_wrapper:datapath.ff0i" + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.ff0i" +end \Timer_1:TimerUDB:sT16:timerdp:u0.ff0__sig\ +net \Timer_1:TimerUDB:sT16:timerdp:u0.ce1__sig\ + term ":udb@[UDB=(2,0)]:dp_wrapper:datapath.ce1" + switch ":udb@[UDB=(2,0)]:dp_wrapper:datapath.ce1==>:udb@[UDB=(3,0)]:dp_wrapper:datapath.ce1i" + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.ce1i" +end \Timer_1:TimerUDB:sT16:timerdp:u0.ce1__sig\ +net \Timer_1:TimerUDB:sT16:timerdp:u0.cl1__sig\ + term ":udb@[UDB=(2,0)]:dp_wrapper:datapath.cl1" + switch ":udb@[UDB=(2,0)]:dp_wrapper:datapath.cl1==>:udb@[UDB=(3,0)]:dp_wrapper:datapath.cl1i" + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.cl1i" +end \Timer_1:TimerUDB:sT16:timerdp:u0.cl1__sig\ +net \Timer_1:TimerUDB:sT16:timerdp:u0.z1__sig\ + term ":udb@[UDB=(2,0)]:dp_wrapper:datapath.z1" + switch ":udb@[UDB=(2,0)]:dp_wrapper:datapath.z1==>:udb@[UDB=(3,0)]:dp_wrapper:datapath.z1i" + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.z1i" +end \Timer_1:TimerUDB:sT16:timerdp:u0.z1__sig\ +net \Timer_1:TimerUDB:sT16:timerdp:u0.ff1__sig\ + term ":udb@[UDB=(2,0)]:dp_wrapper:datapath.ff1" + switch ":udb@[UDB=(2,0)]:dp_wrapper:datapath.ff1==>:udb@[UDB=(3,0)]:dp_wrapper:datapath.ff1i" + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.ff1i" +end \Timer_1:TimerUDB:sT16:timerdp:u0.ff1__sig\ +net \Timer_1:TimerUDB:sT16:timerdp:u0.sol_msb__sig\ + term ":udb@[UDB=(2,0)]:dp_wrapper:datapath.sol_msb" + switch ":udb@[UDB=(2,0)]:dp_wrapper:datapath.sol_msb==>:udb@[UDB=(3,0)]:dp_wrapper:datapath.sir" + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.sir" +end \Timer_1:TimerUDB:sT16:timerdp:u0.sol_msb__sig\ +net \Timer_1:TimerUDB:sT16:timerdp:u0.cfbo__sig\ + term ":udb@[UDB=(2,0)]:dp_wrapper:datapath.cfbo" + switch ":udb@[UDB=(2,0)]:dp_wrapper:datapath.cfbo==>:udb@[UDB=(3,0)]:dp_wrapper:datapath.cfbi" + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.cfbi" +end \Timer_1:TimerUDB:sT16:timerdp:u0.cfbo__sig\ +net \Timer_1:TimerUDB:sT16:timerdp:u1.sor__sig\ + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.sor" + switch ":udb@[UDB=(3,0)]:dp_wrapper:datapath.sor==>:udb@[UDB=(2,0)]:dp_wrapper:datapath.sil" + term ":udb@[UDB=(2,0)]:dp_wrapper:datapath.sil" +end \Timer_1:TimerUDB:sT16:timerdp:u1.sor__sig\ +net \Timer_1:TimerUDB:sT16:timerdp:u1.cmsbo__sig\ + term ":udb@[UDB=(3,0)]:dp_wrapper:datapath.cmsbo" + switch ":udb@[UDB=(3,0)]:dp_wrapper:datapath.cmsbo==>:udb@[UDB=(2,0)]:dp_wrapper:datapath.cmsbi" + term ":udb@[UDB=(2,0)]:dp_wrapper:datapath.cmsbi" +end \Timer_1:TimerUDB:sT16:timerdp:u1.cmsbo__sig\ diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.rpt b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.rpt index e1a5509..a4a22fe 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.rpt +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.rpt @@ -1,16 +1,16 @@ -Loading plugins phase: Elapsed time ==> 0s.201ms -Initializing data phase: Elapsed time ==> 2s.741ms +Loading plugins phase: Elapsed time ==> 0s.206ms +Initializing data phase: Elapsed time ==> 3s.144ms -cydsfit arguments: -.fdsnotice -.fdswarpdepfile=warp_dependencies.txt -.fdselabdepfile=elab_dependencies.txt -.fdsbldfile=generated_files.txt -p C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -d CY8C5568AXI-060 -s C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\Generated_Source\PSoC5 -- -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE +cydsfit arguments: -.fdsnotice -.fdswarpdepfile=warp_dependencies.txt -.fdselabdepfile=elab_dependencies.txt -.fdsbldfile=generated_files.txt -p C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -d CY8C5568AXI-060 -s C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\Generated_Source\PSoC5 -- -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ADD: prj.M0245: information: PSoC 5LP provides many improvements over PSoC 5. Learn more about migrating to PSoC 5LP at www.cypress.com/go/PSoC5LP +ADD: prj.M0246: information: PSoC 5LP provides many improvements over PSoC 5. Learn more about migrating to PSoC 5LP at www.cypress.com/go/PSoC5LP * PSOC5_SPI_LSM303D () -Elaboration phase: Elapsed time ==> 2s.691ms +Elaboration phase: Elapsed time ==> 3s.174ms -HDL generation phase: Elapsed time ==> 0s.072ms +HDL generation phase: Elapsed time ==> 0s.115ms | | | | | | | @@ -28,23 +28,23 @@ HDL generation phase: Elapsed time ==> 0s.072ms ====================================================================== Compiling: PSOC5_SPI_LSM303D.v Program : C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\bin/warp.exe -Options : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 PSOC5_SPI_LSM303D.v -verilog +Options : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 PSOC5_SPI_LSM303D.v -verilog ====================================================================== ====================================================================== Compiling: PSOC5_SPI_LSM303D.v Program : C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\bin/warp.exe -Options : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 PSOC5_SPI_LSM303D.v -verilog +Options : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 PSOC5_SPI_LSM303D.v -verilog ====================================================================== ====================================================================== Compiling: PSOC5_SPI_LSM303D.v Program : vlogfe -Options : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 -verilog PSOC5_SPI_LSM303D.v +Options : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 -verilog PSOC5_SPI_LSM303D.v ====================================================================== vlogfe V6.3 IR 41: Verilog parser -Fri Mar 22 10:33:23 2013 +Thu Jul 25 16:48:52 2013 ====================================================================== @@ -54,7 +54,7 @@ Options : -yv2 -q10 PSOC5_SPI_LSM303D.v ====================================================================== vpp V6.3 IR 41: Verilog Pre-Processor -Fri Mar 22 10:33:23 2013 +Thu Jul 25 16:48:52 2013 Flattening file 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.v' Flattening file 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.v' @@ -67,6 +67,9 @@ Flattening file 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\wa Flattening file 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\CyControlReg_v1_70.v' Flattening file 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\cypress.v' Flattening file 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.v' +Flattening file 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_Timer_v2_50\B_Timer_v2_50.v' +Flattening file 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\cypress.v' +Flattening file 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cyprimitives\CyPrimitives.cylib\OneTerminal\OneTerminal.v' vpp: No errors. @@ -91,6 +94,8 @@ C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\conten C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_UART_v2_30\B_UART_v2_30.v (line 1503, col 106): Note: Substituting module 'cmp_vv_vv' for '<'. C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_UART_v2_30\B_UART_v2_30.v (line 1559, col 68): Note: Substituting module 'cmp_vv_vv' for '<'. C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_UART_v2_30\B_UART_v2_30.v (line 1560, col 68): Note: Substituting module 'cmp_vv_vv' for '<'. +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_Timer_v2_50\B_Timer_v2_50.v (line 368, col 46): Note: Substituting module 'cmp_vv_vv' for '='. +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_Timer_v2_50\B_Timer_v2_50.v (line 374, col 62): Note: Substituting module 'add_vv_vv' for '+'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\cy_psoc3pkg.vif'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\cy_psoc3.vif'. @@ -100,11 +105,11 @@ vlogfe: No errors. ====================================================================== Compiling: PSOC5_SPI_LSM303D.v Program : tovif -Options : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 -verilog PSOC5_SPI_LSM303D.v +Options : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 -verilog PSOC5_SPI_LSM303D.v ====================================================================== tovif V6.3 IR 41: High-level synthesis -Fri Mar 22 10:33:24 2013 +Thu Jul 25 16:48:53 2013 Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\std.vhd'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\cypress.vhd'. @@ -115,9 +120,9 @@ Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\c Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\mod_cnst.vif'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\mod_mthv.vif'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\mod_genv.vif'. -Linking 'C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\codegentemp\PSOC5_SPI_LSM303D.ctl'. +Linking 'C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\codegentemp\PSOC5_SPI_LSM303D.ctl'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.v'. -Linking 'C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\codegentemp\PSOC5_SPI_LSM303D.v'. +Linking 'C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\codegentemp\PSOC5_SPI_LSM303D.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_SPI_Master_v2_40\B_SPI_Master_v2_40.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\cypress.v'. @@ -126,6 +131,8 @@ Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\conte Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\demux_v1_10\demux_v1_10.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\CyControlReg_v1_70.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.v'. +Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_Timer_v2_50\B_Timer_v2_50.v'. +Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\OneTerminal\OneTerminal.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\cy_psoc3pkg.vif'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\cy_psoc3.vif'. @@ -135,11 +142,11 @@ tovif: No errors. ====================================================================== Compiling: PSOC5_SPI_LSM303D.v Program : topld -Options : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 -verilog PSOC5_SPI_LSM303D.v +Options : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 -verilog PSOC5_SPI_LSM303D.v ====================================================================== topld V6.3 IR 41: Synthesis and optimization -Fri Mar 22 10:33:24 2013 +Thu Jul 25 16:48:54 2013 Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\std.vhd'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\cypress.vhd'. @@ -150,9 +157,9 @@ Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\c Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\mod_cnst.vif'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\mod_mthv.vif'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\mod_genv.vif'. -Linking 'C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\codegentemp\PSOC5_SPI_LSM303D.ctl'. +Linking 'C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\codegentemp\PSOC5_SPI_LSM303D.ctl'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.v'. -Linking 'C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\codegentemp\PSOC5_SPI_LSM303D.v'. +Linking 'C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\codegentemp\PSOC5_SPI_LSM303D.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_SPI_Master_v2_40\B_SPI_Master_v2_40.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\cypress.v'. @@ -161,6 +168,8 @@ Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\conte Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\demux_v1_10\demux_v1_10.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\CyControlReg_v1_70.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.v'. +Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_Timer_v2_50\B_Timer_v2_50.v'. +Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\OneTerminal\OneTerminal.v'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\cy_psoc3pkg.vif'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\cy_psoc3.vif'. Linking 'C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\lcpsoc3\stdlogic\cpsoc3.vif'. @@ -190,6 +199,12 @@ Detecting unused logic. \UART_1:BUART:reset_sr\ Net_258 Net_259 + \demux_1:tmp__demux_1_5_reg\ + \demux_1:tmp__demux_1_6_reg\ + \demux_1:tmp__demux_1_7_reg\ + Net_443 + Net_588 + Net_589 \SS:clk\ \SS:rst\ \SS:control_bus_7\ @@ -197,10 +212,24 @@ Detecting unused logic. \SS:control_bus_5\ \SS:control_bus_4\ \SS:control_bus_3\ - \SS:control_bus_2\ - - -Deleted 29 User equations/components. + \Timer_1:Net_260\ + Net_663 + Net_668 + \Timer_1:Net_53\ + \Timer_1:TimerUDB:ctrl_ten\ + \Timer_1:TimerUDB:ctrl_cmode_0\ + \Timer_1:TimerUDB:ctrl_tmode_1\ + \Timer_1:TimerUDB:ctrl_tmode_0\ + \Timer_1:TimerUDB:ctrl_ic_1\ + \Timer_1:TimerUDB:ctrl_ic_0\ + Net_667 + \Timer_1:TimerUDB:zeros_3\ + \Timer_1:TimerUDB:zeros_2\ + \Timer_1:Net_102\ + \Timer_1:Net_266\ + + +Deleted 49 User equations/components. Deleted 0 Synthesized equations/components. ------------------------------------------------------ @@ -238,8 +267,18 @@ Aliasing tmpOE__Pin_1_net_0 to tmpOE__m_miso_pin_net_0 Aliasing tmpOE__Pin_2_net_0 to tmpOE__m_miso_pin_net_0 Aliasing tmpOE__Pin_3_net_0 to tmpOE__m_miso_pin_net_0 Aliasing tmpOE__Pin_4_net_0 to tmpOE__m_miso_pin_net_0 +Aliasing tmpOE__Pin_5_net_0 to tmpOE__m_miso_pin_net_0 +Aliasing Net_12 to zero +Aliasing \Timer_1:TimerUDB:ctrl_cmode_1\ to zero +Aliasing \Timer_1:TimerUDB:trigger_enable\ to tmpOE__m_miso_pin_net_0 +Aliasing \Timer_1:TimerUDB:status_6\ to zero +Aliasing \Timer_1:TimerUDB:status_5\ to zero +Aliasing \Timer_1:TimerUDB:status_4\ to zero +Aliasing \Timer_1:TimerUDB:status_0\ to \Timer_1:TimerUDB:tc_i\ Aliasing \SPIM:BSPIM:dpcounter_one_reg\\D\ to \SPIM:BSPIM:tx_status_3\ Aliasing Net_256D to zero +Aliasing \Timer_1:TimerUDB:capture_last\\D\ to zero +Aliasing \Timer_1:TimerUDB:capture_out_reg_i\\D\ to \Timer_1:TimerUDB:capt_fifo_load_int\ Removing Lhs of wire one[7] = tmpOE__m_miso_pin_net_0[2] Removing Lhs of wire tmpOE__m_mosi_pin_net_0[10] = tmpOE__m_miso_pin_net_0[2] Removing Rhs of wire Net_30[11] = \SPIM:BSPIM:mosi_fin\[36] @@ -283,28 +322,55 @@ Removing Lhs of wire \UART_1:BUART:tx_status_4\[224] = zero[3] Removing Lhs of wire \UART_1:BUART:tx_status_1\[226] = \UART_1:BUART:tx_fifo_empty\[187] Removing Lhs of wire \UART_1:BUART:tx_status_3\[228] = \UART_1:BUART:tx_fifo_notfull\[186] Removing Lhs of wire tmpOE__Tx_1_net_0[236] = tmpOE__m_miso_pin_net_0[2] -Removing Rhs of wire mywire_1_1[242] = \SS:control_out_1\[266] -Removing Rhs of wire mywire_1_1[242] = \SS:control_1\[275] -Removing Rhs of wire mywire_1_0[243] = \SS:control_out_0\[267] -Removing Rhs of wire mywire_1_0[243] = \SS:control_0\[276] -Removing Rhs of wire Net_444[248] = \demux_1:tmp__demux_1_0_reg\[241] -Removing Rhs of wire Net_441[249] = \demux_1:tmp__demux_1_1_reg\[245] -Removing Rhs of wire Net_449[250] = \demux_1:tmp__demux_1_2_reg\[246] -Removing Rhs of wire Net_443[251] = \demux_1:tmp__demux_1_3_reg\[247] -Removing Lhs of wire tmpOE__Pin_1_net_0[278] = tmpOE__m_miso_pin_net_0[2] -Removing Lhs of wire tmpOE__Pin_2_net_0[285] = tmpOE__m_miso_pin_net_0[2] -Removing Lhs of wire tmpOE__Pin_3_net_0[292] = tmpOE__m_miso_pin_net_0[2] -Removing Lhs of wire tmpOE__Pin_4_net_0[299] = tmpOE__m_miso_pin_net_0[2] -Removing Lhs of wire \SPIM:BSPIM:dpcounter_one_reg\\D\[306] = \SPIM:BSPIM:dpcounter_one\[54] -Removing Lhs of wire \SPIM:BSPIM:so_send_reg\\D\[307] = \SPIM:BSPIM:so_send\[34] -Removing Lhs of wire \SPIM:BSPIM:mosi_reg\\D\[314] = \SPIM:BSPIM:mosi_pre_reg\[51] -Removing Lhs of wire \SPIM:BSPIM:mosi_from_dp_reg\\D\[316] = \SPIM:BSPIM:mosi_from_dp\[41] -Removing Lhs of wire \UART_1:BUART:reset_reg\\D\[320] = zero[3] -Removing Lhs of wire \UART_1:BUART:tx_bitclk\\D\[325] = \UART_1:BUART:tx_bitclk_enable_pre\[173] -Removing Lhs of wire Net_256D[326] = zero[3] +Removing Rhs of wire mywire_1_2[242] = \SS:control_out_2\[273] +Removing Rhs of wire mywire_1_2[242] = \SS:control_2\[282] +Removing Rhs of wire mywire_1_1[243] = \SS:control_out_1\[274] +Removing Rhs of wire mywire_1_1[243] = \SS:control_1\[283] +Removing Rhs of wire mywire_1_0[244] = \SS:control_out_0\[275] +Removing Rhs of wire mywire_1_0[244] = \SS:control_0\[284] +Removing Rhs of wire Net_590[253] = \demux_1:tmp__demux_1_0_reg\[241] +Removing Rhs of wire Net_591[254] = \demux_1:tmp__demux_1_1_reg\[246] +Removing Rhs of wire Net_592[255] = \demux_1:tmp__demux_1_2_reg\[247] +Removing Rhs of wire Net_594[256] = \demux_1:tmp__demux_1_3_reg\[248] +Removing Rhs of wire Net_596[257] = \demux_1:tmp__demux_1_4_reg\[249] +Removing Lhs of wire tmpOE__Pin_1_net_0[286] = tmpOE__m_miso_pin_net_0[2] +Removing Lhs of wire tmpOE__Pin_2_net_0[293] = tmpOE__m_miso_pin_net_0[2] +Removing Lhs of wire tmpOE__Pin_3_net_0[300] = tmpOE__m_miso_pin_net_0[2] +Removing Lhs of wire tmpOE__Pin_4_net_0[307] = tmpOE__m_miso_pin_net_0[2] +Removing Lhs of wire tmpOE__Pin_5_net_0[314] = tmpOE__m_miso_pin_net_0[2] +Removing Lhs of wire Net_12[320] = zero[3] +Removing Lhs of wire \Timer_1:TimerUDB:ctrl_enable\[338] = \Timer_1:TimerUDB:control_7\[330] +Removing Lhs of wire \Timer_1:TimerUDB:ctrl_cmode_1\[340] = zero[3] +Removing Rhs of wire \Timer_1:TimerUDB:timer_enable\[349] = \Timer_1:TimerUDB:runmode_enable\[361] +Removing Rhs of wire \Timer_1:TimerUDB:run_mode\[350] = \Timer_1:TimerUDB:hwEnable_reg\[351] +Removing Lhs of wire \Timer_1:TimerUDB:trigger_enable\[353] = tmpOE__m_miso_pin_net_0[2] +Removing Lhs of wire \Timer_1:TimerUDB:tc_i\[355] = \Timer_1:TimerUDB:status_tc\[352] +Removing Lhs of wire \Timer_1:TimerUDB:hwEnable\[357] = \Timer_1:TimerUDB:control_7\[330] +Removing Lhs of wire \Timer_1:TimerUDB:capt_fifo_load_int\[360] = \Timer_1:TimerUDB:capt_fifo_load\[348] +Removing Lhs of wire \Timer_1:TimerUDB:status_6\[364] = zero[3] +Removing Lhs of wire \Timer_1:TimerUDB:status_5\[365] = zero[3] +Removing Lhs of wire \Timer_1:TimerUDB:status_4\[366] = zero[3] +Removing Lhs of wire \Timer_1:TimerUDB:status_0\[367] = \Timer_1:TimerUDB:status_tc\[352] +Removing Lhs of wire \Timer_1:TimerUDB:status_1\[368] = \Timer_1:TimerUDB:capt_fifo_load\[348] +Removing Rhs of wire \Timer_1:TimerUDB:status_2\[369] = \Timer_1:TimerUDB:fifo_full\[370] +Removing Rhs of wire \Timer_1:TimerUDB:status_3\[371] = \Timer_1:TimerUDB:fifo_nempty\[372] +Removing Lhs of wire \Timer_1:TimerUDB:cs_addr_2\[374] = zero[3] +Removing Lhs of wire \Timer_1:TimerUDB:cs_addr_1\[375] = \Timer_1:TimerUDB:trig_reg\[363] +Removing Lhs of wire \Timer_1:TimerUDB:cs_addr_0\[376] = \Timer_1:TimerUDB:per_zero\[354] +Removing Lhs of wire \SPIM:BSPIM:dpcounter_one_reg\\D\[461] = \SPIM:BSPIM:dpcounter_one\[54] +Removing Lhs of wire \SPIM:BSPIM:so_send_reg\\D\[462] = \SPIM:BSPIM:so_send\[34] +Removing Lhs of wire \SPIM:BSPIM:mosi_reg\\D\[469] = \SPIM:BSPIM:mosi_pre_reg\[51] +Removing Lhs of wire \SPIM:BSPIM:mosi_from_dp_reg\\D\[471] = \SPIM:BSPIM:mosi_from_dp\[41] +Removing Lhs of wire \UART_1:BUART:reset_reg\\D\[475] = zero[3] +Removing Lhs of wire \UART_1:BUART:tx_bitclk\\D\[480] = \UART_1:BUART:tx_bitclk_enable_pre\[173] +Removing Lhs of wire Net_256D[481] = zero[3] +Removing Lhs of wire \Timer_1:TimerUDB:capture_last\\D\[485] = zero[3] +Removing Lhs of wire \Timer_1:TimerUDB:hwEnable_reg\\D\[486] = \Timer_1:TimerUDB:control_7\[330] +Removing Lhs of wire \Timer_1:TimerUDB:tc_reg_i\\D\[487] = \Timer_1:TimerUDB:status_tc\[352] +Removing Lhs of wire \Timer_1:TimerUDB:capture_out_reg_i\\D\[488] = \Timer_1:TimerUDB:capt_fifo_load\[348] ------------------------------------------------------ -Aliased 0 equations, 62 wires. +Aliased 0 equations, 89 wires. ------------------------------------------------------ ---------------------------------------------------------- @@ -332,17 +398,26 @@ Note: Expanding virtual equation for '\UART_1:BUART:tx_counter_tc\' (cost = 0): Note: Expanding virtual equation for 'Net_438' (cost = 0): Net_438 <= (not Net_439); -Note: Expanding virtual equation for 'Net_444' (cost = 3): -Net_444 <= ((not Net_439 and not mywire_1_1 and not mywire_1_0)); +Note: Expanding virtual equation for 'Net_590' (cost = 4): +Net_590 <= ((not Net_439 and not mywire_1_2 and not mywire_1_1 and not mywire_1_0)); + +Note: Expanding virtual equation for 'Net_591' (cost = 4): +Net_591 <= ((not Net_439 and not mywire_1_2 and not mywire_1_1 and mywire_1_0)); -Note: Expanding virtual equation for 'Net_441' (cost = 3): -Net_441 <= ((not Net_439 and not mywire_1_1 and mywire_1_0)); +Note: Expanding virtual equation for 'Net_592' (cost = 4): +Net_592 <= ((not Net_439 and not mywire_1_2 and not mywire_1_0 and mywire_1_1)); -Note: Expanding virtual equation for 'Net_449' (cost = 3): -Net_449 <= ((not Net_439 and not mywire_1_0 and mywire_1_1)); +Note: Expanding virtual equation for 'Net_594' (cost = 4): +Net_594 <= ((not Net_439 and not mywire_1_2 and mywire_1_1 and mywire_1_0)); -Note: Expanding virtual equation for 'Net_443' (cost = 3): -Net_443 <= ((not Net_439 and mywire_1_1 and mywire_1_0)); +Note: Expanding virtual equation for 'Net_596' (cost = 4): +Net_596 <= ((not Net_439 and not mywire_1_1 and not mywire_1_0 and mywire_1_2)); + +Note: Expanding virtual equation for '\Timer_1:TimerUDB:fifo_load_polarized\' (cost = 0): +\Timer_1:TimerUDB:fifo_load_polarized\ <= ('0') ; + +Note: Expanding virtual equation for '\Timer_1:TimerUDB:status_tc\' (cost = 3): +\Timer_1:TimerUDB:status_tc\ <= ((\Timer_1:TimerUDB:run_mode\ and \Timer_1:TimerUDB:per_zero\)); Substituting virtuals - pass 2: @@ -351,7 +426,7 @@ Substituting virtuals - pass 2: ---------------------------------------------------------- Circuit simplification results: - Expanded 10 signals. + Expanded 13 signals. Turned 0 signals into soft nodes. Maximum default expansion cost was set at 5. ---------------------------------------------------------- @@ -359,10 +434,13 @@ Circuit simplification results: ------------------------------------------------------ Alias Detection ------------------------------------------------------ -Removing Lhs of wire \UART_1:BUART:tx_ctrl_mark_last\\D\[327] = \UART_1:BUART:tx_ctrl_mark_last\[231] +Aliasing \Timer_1:TimerUDB:capt_fifo_load\ to zero +Removing Lhs of wire \Timer_1:TimerUDB:capt_fifo_load\[348] = zero[3] +Removing Lhs of wire \Timer_1:TimerUDB:trig_reg\[363] = \Timer_1:TimerUDB:timer_enable\[349] +Removing Lhs of wire \UART_1:BUART:tx_ctrl_mark_last\\D\[482] = \UART_1:BUART:tx_ctrl_mark_last\[231] ------------------------------------------------------ -Aliased 0 equations, 1 wires. +Aliased 0 equations, 3 wires. ------------------------------------------------------ ---------------------------------------------------------- @@ -390,21 +468,24 @@ topld: No errors. CYPRESS_DIR : C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp Warp Program : C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\bin/warp.exe -Warp Arguments : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 PSOC5_SPI_LSM303D.v -verilog +Warp Arguments : -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -dcpsoc3 PSOC5_SPI_LSM303D.v -verilog -Warp synthesis phase: Elapsed time ==> 1s.794ms +Warp synthesis phase: Elapsed time ==> 2s.217ms -cyp3fit: V2.2.0.293, Family: PSoC3, Started at: Friday, 22 March 2013 10:33:25 -Options: -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -d CY8C5568AXI-060 PSOC5_SPI_LSM303D.v -verilog +cyp3fit: V2.2.0.572, Family: PSoC3, Started at: Thursday, 25 July 2013 16:48:55 +Options: -yv2 -v5 -yga -q10 -o2 -.fftcfgtype=LE -ya -.fftprj=C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -d CY8C5568AXI-060 PSOC5_SPI_LSM303D.v -verilog -Design parsing phase: Elapsed time ==> 0s.020ms +Design parsing phase: Elapsed time ==> 0s.025ms Converted constant MacroCell: Net_256 from registered to combinatorial + Converted constant MacroCell: \Timer_1:TimerUDB:capture_last\ from registered to combinatorial + Converted constant MacroCell: \Timer_1:TimerUDB:capture_out_reg_i\ from registered to combinatorial Converted constant MacroCell: \UART_1:BUART:reset_reg\ from registered to combinatorial +Assigning clock timer_clock to clock ILO because it is a pass-through Digital Clock 0: Automatic-assigning clock 'SPIM_IntClock'. Fanout=1, Signal=\SPIM:Net_276\ Digital Clock 1: Automatic-assigning clock 'Clock_1'. Fanout=1, Signal=Net_191 @@ -414,6 +495,9 @@ Removing unused cells resulting from optimization Removed unused cell/equation 'Net_256:macrocell' Removed unused cell/equation '\SPIM:BSPIM:mosi_reg\:macrocell' Removed unused cell/equation '\SPIM:BSPIM:so_send_reg\:macrocell' + Removed unused cell/equation '\Timer_1:TimerUDB:capture_last\:macrocell' + Removed unused cell/equation '\Timer_1:TimerUDB:capture_out_reg_i\:macrocell' + Removed unused cell/equation '\Timer_1:TimerUDB:tc_reg_i\:macrocell' Removed unused cell/equation '\SPIM:BSPIM:so_send\:macrocell' Done removing unused cells. @@ -421,6 +505,10 @@ Done removing unused cells. ClockIn: SPIM_IntClock was determined to be a global clock that is synchronous to BUS_CLK EnableIn: Constant 1 was determined to be synchronous to ClockIn ClockOut: SPIM_IntClock, EnableOut: Constant 1 + UDB Clk/Enable \Timer_1:TimerUDB:clock_enable_block\: with output requested to be synchronous + ClockIn: ILO was determined to be a routed clock that is asynchronous + EnableIn: Constant 1 was determined to be synchronous to ClockIn + ClockOut: BUS_CLK, EnableOut: ClockBlock_1k__SYNC:synccell.out UDB Clk/Enable \UART_1:BUART:ClkSync\: with output requested to be synchronous ClockIn: Clock_1 was determined to be a global clock that is synchronous to BUS_CLK EnableIn: Constant 1 was determined to be synchronous to ClockIn @@ -439,6 +527,8 @@ Removing unused cells resulting from optimization Removed unused cell/equation '\SPIM:BSPIM:state_0\\D\:macrocell' Removed unused cell/equation '\SPIM:BSPIM:state_1\\D\:macrocell' Removed unused cell/equation '\SPIM:BSPIM:state_2\\D\:macrocell' + Removed unused cell/equation '\Timer_1:TimerUDB:runmode_enable\\D\:macrocell' + Removed unused cell/equation '\Timer_1:TimerUDB:trig_disable\\D\:macrocell' Removed unused cell/equation '\UART_1:BUART:reset_reg\:macrocell' Removed unused cell/equation '\UART_1:BUART:tx_mark\\D\:macrocell' Removed unused cell/equation '\UART_1:BUART:tx_parity_bit\\D\:macrocell' @@ -653,6 +743,45 @@ Design Equations { } + Pin : Name = Pin_5(0) + Attributes: + In Group/Port: True + In Sync Option: AUTO + Out Sync Option: NOSYNC + Interrupt generated: False + Interrupt mode: NONE + Drive mode: RES_PULL_UP + VTrip: EITHER + Slew: FAST + Input Sync needed: False + Output Sync needed: False + SC shield enabled: False + POR State: ANY + LCD Mode: COMMON + Register Mode: RegComb + CaSense Mode: NEITHER + Treat as pin: True + Is OE Registered: False + Uses Analog: False + Can contain Digital: True + Is SIO: False + SIO Output Buf: NONREGULATED + SIO Input Buf: SINGLE_ENDED + SIO HiFreq: LOW + SIO Hyst: DISABLED + SIO Vtrip: MULTIPLIER_0_5 + SIO RefSel: VCC_IO + Required Capabilitites: DIGITAL, ROUTABLE + Initial Value: 1 + IO Voltage: 0 + PORT MAP ( + pa_out => Pin_5(0)__PA , + input => Net_585 , + pad => Pin_5(0)_PAD ); + Properties: + { + } + Pin : Name = Tx_1(0) Attributes: In Group/Port: True @@ -1102,42 +1231,42 @@ Design Equations Output = Net_30 (fanout=1) MacroCell: Name=Net_419, Mode=(Combinatorial) - Total # of inputs : 3 + Total # of inputs : 4 Total # of product terms : 1 Clock Enable: True Main Equation : 1 pterm !( - !Net_439 * !mywire_1_1 * !mywire_1_0 + !Net_439 * !mywire_1_2 * !mywire_1_1 * !mywire_1_0 ); Output = Net_419 (fanout=1) MacroCell: Name=Net_422, Mode=(Combinatorial) - Total # of inputs : 3 + Total # of inputs : 4 Total # of product terms : 1 Clock Enable: True Main Equation : 1 pterm !( - !Net_439 * !mywire_1_1 * mywire_1_0 + !Net_439 * !mywire_1_2 * !mywire_1_1 * mywire_1_0 ); Output = Net_422 (fanout=1) MacroCell: Name=Net_425, Mode=(Combinatorial) - Total # of inputs : 3 + Total # of inputs : 4 Total # of product terms : 1 Clock Enable: True Main Equation : 1 pterm !( - !Net_439 * mywire_1_1 * mywire_1_0 + !Net_439 * !mywire_1_2 * mywire_1_1 * mywire_1_0 ); Output = Net_425 (fanout=1) MacroCell: Name=Net_428, Mode=(Combinatorial) - Total # of inputs : 3 + Total # of inputs : 4 Total # of product terms : 1 Clock Enable: True Main Equation : 1 pterm !( - !Net_439 * mywire_1_1 * !mywire_1_0 + !Net_439 * !mywire_1_2 * mywire_1_1 * !mywire_1_0 ); Output = Net_428 (fanout=1) @@ -1156,7 +1285,7 @@ Design Equations + \SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_1\ * \SPIM:BSPIM:state_0\ * !Net_439 ); - Output = Net_439 (fanout=6) + Output = Net_439 (fanout=7) MacroCell: Name=Net_479, Mode=(D-Register) Total # of inputs : 4 @@ -1174,6 +1303,16 @@ Design Equations ); Output = Net_479 (fanout=2) + MacroCell: Name=Net_585, Mode=(Combinatorial) + Total # of inputs : 4 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + !( + !Net_439 * mywire_1_2 * !mywire_1_1 * !mywire_1_0 + ); + Output = Net_585 (fanout=1) + MacroCell: Name=\SPIM:BSPIM:cnt_enable\, Mode=(T-Register) Total # of inputs : 10 Total # of product terms : 4 @@ -1435,6 +1574,58 @@ Design Equations ); Output = \SPIM:BSPIM:tx_status_4\ (fanout=1) + MacroCell: Name=\Timer_1:TimerUDB:run_mode\, Mode=(D-Register) + Total # of inputs : 1 + Total # of product terms : 1 + List of special equations: + Clock = (ClockBlock_BUS_CLK) => Global + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + Main Equation : 1 pterm + ( + \Timer_1:TimerUDB:control_7\ + ); + Output = \Timer_1:TimerUDB:run_mode\ (fanout=3) + + MacroCell: Name=\Timer_1:TimerUDB:status_tc\, Mode=(Combinatorial) + Total # of inputs : 2 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + ( + \Timer_1:TimerUDB:run_mode\ * \Timer_1:TimerUDB:per_zero\ + ); + Output = \Timer_1:TimerUDB:status_tc\ (fanout=1) + + MacroCell: Name=\Timer_1:TimerUDB:timer_enable\, Mode=(D-Register) + Total # of inputs : 5 + Total # of product terms : 3 + List of special equations: + Clock = (ClockBlock_BUS_CLK) => Global + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + Main Equation : 3 pterms + ( + \Timer_1:TimerUDB:control_7\ * !\Timer_1:TimerUDB:timer_enable\ * + !\Timer_1:TimerUDB:trig_disable\ + + \Timer_1:TimerUDB:control_7\ * !\Timer_1:TimerUDB:run_mode\ * + !\Timer_1:TimerUDB:trig_disable\ + + \Timer_1:TimerUDB:control_7\ * !\Timer_1:TimerUDB:per_zero\ * + !\Timer_1:TimerUDB:trig_disable\ + ); + Output = \Timer_1:TimerUDB:timer_enable\ (fanout=4) + + MacroCell: Name=\Timer_1:TimerUDB:trig_disable\, Mode=(T-Register) + Total # of inputs : 4 + Total # of product terms : 1 + List of special equations: + Clock = (ClockBlock_BUS_CLK) => Global + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + Main Equation : 1 pterm + ( + \Timer_1:TimerUDB:timer_enable\ * \Timer_1:TimerUDB:run_mode\ * + \Timer_1:TimerUDB:per_zero\ * !\Timer_1:TimerUDB:trig_disable\ + ); + Output = \Timer_1:TimerUDB:trig_disable\ (fanout=2) + MacroCell: Name=\UART_1:BUART:counter_load_not\, Mode=(Combinatorial) Total # of inputs : 4 Total # of product terms : 2 @@ -1612,6 +1803,79 @@ Design Equations Clock Polarity: Active High Clock Enable: True + datapathcell: Name =\Timer_1:TimerUDB:sT16:timerdp:u0\ + PORT MAP ( + clock => ClockBlock_BUS_CLK , + cs_addr_1 => \Timer_1:TimerUDB:timer_enable\ , + cs_addr_0 => \Timer_1:TimerUDB:per_zero\ , + chain_out => \Timer_1:TimerUDB:sT16:timerdp:carry\ , + clk_en => ClockBlock_1k__SYNC_OUT ); + Properties: + { + a0_init = "00000000" + a1_init = "00000000" + ce0_sync = 1 + ce1_sync = 1 + cl0_sync = 1 + cl1_sync = 1 + cmsb_sync = 1 + co_msb_sync = 1 + cy_dpconfig = "0000000001000000000000000100000001000000010000000000000010000000000000001000000000000000100000000000000010000000000000001000000011111111000000001111111111111111000000000000000000000001000000000000000000011000" + d0_init = "00000000" + d1_init = "00000000" + f0_blk_sync = 1 + f0_bus_sync = 1 + f1_blk_sync = 1 + f1_bus_sync = 1 + ff0_sync = 1 + ff1_sync = 1 + ov_msb_sync = 1 + so_sync = 1 + z0_sync = 1 + z1_sync = 1 + } + Clock Polarity: Active High + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + Next in chain : \Timer_1:TimerUDB:sT16:timerdp:u1\ + + datapathcell: Name =\Timer_1:TimerUDB:sT16:timerdp:u1\ + PORT MAP ( + clock => ClockBlock_BUS_CLK , + cs_addr_1 => \Timer_1:TimerUDB:timer_enable\ , + cs_addr_0 => \Timer_1:TimerUDB:per_zero\ , + z0_comb => \Timer_1:TimerUDB:per_zero\ , + f0_bus_stat_comb => \Timer_1:TimerUDB:status_3\ , + f0_blk_stat_comb => \Timer_1:TimerUDB:status_2\ , + chain_in => \Timer_1:TimerUDB:sT16:timerdp:carry\ , + clk_en => ClockBlock_1k__SYNC_OUT ); + Properties: + { + a0_init = "00000000" + a1_init = "00000000" + ce0_sync = 1 + ce1_sync = 1 + cl0_sync = 1 + cl1_sync = 1 + cmsb_sync = 1 + co_msb_sync = 1 + cy_dpconfig = "0000000001000000000000000100000001000000010000000000000010000000000000001000000000000000100000000000000010000000000000001000000011111111000000001111111111111111100000110000000000000001000000110000000000011000" + d0_init = "00000000" + d1_init = "00000000" + f0_blk_sync = 1 + f0_bus_sync = 1 + f1_blk_sync = 1 + f1_bus_sync = 1 + ff0_sync = 1 + ff1_sync = 1 + ov_msb_sync = 1 + so_sync = 1 + z0_sync = 1 + z1_sync = 1 + } + Clock Polarity: Active High + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + Previous in chain : \Timer_1:TimerUDB:sT16:timerdp:u0\ + datapathcell: Name =\UART_1:BUART:sTX:TxShifter:u0\ PORT MAP ( clock => Net_191 , @@ -1721,6 +1985,22 @@ Design Equations Clock Polarity: Active High Clock Enable: True + statusicell: Name =\Timer_1:TimerUDB:nrstSts:stsreg\ + PORT MAP ( + clock => ClockBlock_BUS_CLK , + status_3 => \Timer_1:TimerUDB:status_3\ , + status_2 => \Timer_1:TimerUDB:status_2\ , + status_0 => \Timer_1:TimerUDB:status_tc\ , + clk_en => ClockBlock_1k__SYNC_OUT ); + Properties: + { + cy_force_order = 1 + cy_int_mask = "1111111" + cy_md_select = "0000011" + } + Clock Polarity: Active High + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + statusicell: Name =\UART_1:BUART:sTX:TxSts\ PORT MAP ( clock => Net_191 , @@ -1738,6 +2018,18 @@ Design Equations Clock Enable: True + + ------------------------------------------------------------ + Sync listing + ------------------------------------------------------------ + + synccell: Name =ClockBlock_1k__SYNC + PORT MAP ( + in => ClockBlock_1k , + out => ClockBlock_1k__SYNC_OUT , + clock => ClockBlock_BUS_CLK ); + Clock Polarity: Active High + Clock Enable: True @@ -1752,7 +2044,7 @@ Design Equations control_5 => \SS:control_5\ , control_4 => \SS:control_4\ , control_3 => \SS:control_3\ , - control_2 => \SS:control_2\ , + control_2 => mywire_1_2 , control_1 => mywire_1_1 , control_0 => mywire_1_0 ); Properties: @@ -1764,6 +2056,26 @@ Design Equations cy_init_value = "00000000" } Clock Enable: True + + controlcell: Name =\Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\ + PORT MAP ( + control_7 => \Timer_1:TimerUDB:control_7\ , + control_6 => \Timer_1:TimerUDB:control_6\ , + control_5 => \Timer_1:TimerUDB:control_5\ , + control_4 => \Timer_1:TimerUDB:control_4\ , + control_3 => \Timer_1:TimerUDB:control_3\ , + control_2 => \Timer_1:TimerUDB:control_2\ , + control_1 => \Timer_1:TimerUDB:control_1\ , + control_0 => \Timer_1:TimerUDB:control_0\ ); + Properties: + { + cy_ctrl_mode_0 = "00000000" + cy_ctrl_mode_1 = "00000000" + cy_ext_reset = 0 + cy_force_order = 1 + cy_init_value = "00000000" + } + Clock Enable: True @@ -1809,15 +2121,16 @@ Resource Type : Used : Free : Max : % Used ============================================================ Digital domain clock dividers : 2 : 6 : 8 : 25.00% Analog domain clock dividers : 0 : 4 : 4 : 0.00% -Pins : 18 : 52 : 70 : 25.71% -UDB Macrocells : 32 : 160 : 192 : 16.67% -UDB Unique Pterms : 67 : 317 : 384 : 17.45% -UDB Total Pterms : 74 : : : -UDB Datapath Cells : 3 : 21 : 24 : 12.50% -UDB Status Cells : 3 : 21 : 24 : 12.50% - StatusI Registers : 3 -UDB Control Cells : 2 : 22 : 24 : 8.33% - Control Registers : 1 +Pins : 19 : 51 : 70 : 27.14% +UDB Macrocells : 37 : 155 : 192 : 19.27% +UDB Unique Pterms : 74 : 310 : 384 : 19.27% +UDB Total Pterms : 81 : : : +UDB Datapath Cells : 5 : 19 : 24 : 20.83% +UDB Status Cells : 5 : 19 : 24 : 20.83% + StatusI Registers : 4 + Sync Cells : 1 (in 1 status cell) +UDB Control Cells : 3 : 21 : 24 : 12.50% + Control Registers : 2 Count7 Cells : 1 DMA Channels : 0 : 24 : 24 : 0.00% Interrupts : 0 : 32 : 32 : 0.00% @@ -1838,9 +2151,9 @@ EMIF Fixed Blocks : 0 : 1 : 1 : 0.00% LPF Fixed Blocks : 0 : 2 : 2 : 0.00% SAR Fixed Blocks : 0 : 2 : 2 : 0.00% -Technology Mapping: Elapsed time ==> 0s.099ms +Technology Mapping: Elapsed time ==> 0s.051ms Info: mpr.M0037: Unused pieces of the design have been optimized out. See the Tech mapping section of the report file for details. (App=cydsfit) -Tech mapping phase: Elapsed time ==> 0s.210ms +Tech mapping phase: Elapsed time ==> 0s.220ms Initial Analog Placement Results: @@ -1848,6 +2161,7 @@ IO_0@[IOP=(3)][IoId=(0)] : Pin_1(0) (fixed) IO_1@[IOP=(3)][IoId=(1)] : Pin_2(0) (fixed) IO_2@[IOP=(3)][IoId=(2)] : Pin_3(0) (fixed) IO_3@[IOP=(3)][IoId=(3)] : Pin_4(0) (fixed) +IO_4@[IOP=(3)][IoId=(4)] : Pin_5(0) (fixed) IO_7@[IOP=(3)][IoId=(7)] : Tx_1(0) (fixed) IO_0@[IOP=(2)][IoId=(0)] : \LCD:LCDPort(0)\ (fixed) IO_1@[IOP=(2)][IoId=(1)] : \LCD:LCDPort(1)\ (fixed) @@ -1859,10 +2173,10 @@ IO_6@[IOP=(2)][IoId=(6)] : \LCD:LCDPort(6)\ (fixed) IO_0@[IOP=(0)][IoId=(0)] : m_miso_pin(0) (fixed) IO_5@[IOP=(0)][IoId=(5)] : m_mosi_pin(0) (fixed) IO_6@[IOP=(0)][IoId=(6)] : m_sclk_pin(0) (fixed) -Analog Placement phase: Elapsed time ==> 0s.053ms +Analog Placement phase: Elapsed time ==> 0s.052ms -Analog Routing phase: Elapsed time ==> 0s.000ms +Analog Routing phase: Elapsed time ==> 0s.001ms ============ Analog Final Answer Routes ============ @@ -1877,7 +2191,7 @@ Dump of CyP35AnalogRoutingResultsDB IsVddaHalfUsedForComp = False IsVddaHalfUsedForSar0 = False IsVddaHalfUsedForSar1 = False -Analog Code Generation phase: Elapsed time ==> 0s.435ms +Analog Code Generation phase: Elapsed time ==> 0s.614ms @@ -1888,33 +2202,33 @@ PLD Packing Summary ------------------------------------------------------------ Resource Type : Used : Free : Max : % Used ==================================================== - PLDs : 11 : 37 : 48 : 22.92% + PLDs : 13 : 35 : 48 : 27.08% PLD Resource Type : Average/LAB ======================================= - Inputs : 7.82 - Pterms : 6.36 - Macrocells : 2.91 + Inputs : 7.46 + Pterms : 6.00 + Macrocells : 2.85 Packed PLD Contents not displayed at this verbose level. -PLD Packing: Elapsed time ==> 0s.001ms +PLD Packing: Elapsed time ==> 0s.003ms Initial Partitioning Summary not displayed at this verbose level. Final Partitioning Summary not displayed at this verbose level. -Partitioning: Elapsed time ==> 0s.043ms +Partitioning: Elapsed time ==> 0s.059ms Annealing: Elapsed time ==> 0s.002ms The seed used for moves was 114161200. -Inital cost was 248, final cost is 248 (0.00% improvement). +Inital cost was 261, final cost is 261 (0.00% improvement). @@ -1924,7 +2238,7 @@ Final Placement Summary Resource Type : Count : Avg Inputs : Avg Outputs ======================================================== - UDB : 6 : 10.50 : 5.33 + UDB : 8 : 9.13 : 4.63 @@ -1943,174 +2257,297 @@ UDB [UDB=(1,2)] is empty. UDB [UDB=(1,3)] is empty. UDB [UDB=(1,4)] is empty. UDB [UDB=(1,5)] is empty. -UDB [UDB=(2,0)] is empty. -UDB [UDB=(2,1)] is empty. -UDB [UDB=(2,2)] is empty. -UDB [UDB=(2,3)] contents: -LAB@[UDB=(2,3)][LB=0] #macrocells=3, #inputs=11, #pterms=8 +UDB [UDB=(2,0)] contents: +LAB@[UDB=(2,0)][LB=0] #macrocells=4, #inputs=5, #pterms=6 { - [McSlotId=0]: MacroCell: Name=\SPIM:BSPIM:cnt_enable\, Mode=(T-Register) @ [UDB=(2,3)][LB=0][MC=0] - Total # of inputs : 10 - Total # of product terms : 4 + [McSlotId=0]: MacroCell: Name=\Timer_1:TimerUDB:timer_enable\, Mode=(D-Register) @ [UDB=(2,0)][LB=0][MC=0] + Total # of inputs : 5 + Total # of product terms : 3 List of special equations: - Clock = (\SPIM:Net_276\) => Global - Clock Enable: True - Main Equation : 4 pterms + Clock = (ClockBlock_BUS_CLK) => Global + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + Main Equation : 3 pterms ( - !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * - !\SPIM:BSPIM:state_0\ * \SPIM:BSPIM:cnt_enable\ - + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * - \SPIM:BSPIM:state_0\ * !\SPIM:BSPIM:cnt_enable\ - + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_0\ * - !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * - !\SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * - \SPIM:BSPIM:count_0\ * \SPIM:BSPIM:is_spi_done\ * - \SPIM:BSPIM:cnt_enable\ - + \SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_0\ * - \SPIM:BSPIM:cnt_enable\ - ); - Output = \SPIM:BSPIM:cnt_enable\ (fanout=3) + \Timer_1:TimerUDB:control_7\ * !\Timer_1:TimerUDB:timer_enable\ * + !\Timer_1:TimerUDB:trig_disable\ + + \Timer_1:TimerUDB:control_7\ * !\Timer_1:TimerUDB:run_mode\ * + !\Timer_1:TimerUDB:trig_disable\ + + \Timer_1:TimerUDB:control_7\ * !\Timer_1:TimerUDB:per_zero\ * + !\Timer_1:TimerUDB:trig_disable\ + ); + Output = \Timer_1:TimerUDB:timer_enable\ (fanout=4) Properties : { } - [McSlotId=1]: MacroCell: Name=\SPIM:BSPIM:state_1\, Mode=(D-Register) @ [UDB=(2,3)][LB=0][MC=1] - Total # of inputs : 10 - Total # of product terms : 4 + [McSlotId=1]: MacroCell: Name=\Timer_1:TimerUDB:trig_disable\, Mode=(T-Register) @ [UDB=(2,0)][LB=0][MC=1] + Total # of inputs : 4 + Total # of product terms : 1 List of special equations: - Clock = (\SPIM:Net_276\) => Global - Clock Enable: True - Main Equation : 4 pterms - !( - !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * - !\SPIM:BSPIM:state_0\ - + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_0\ * - !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * - !\SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * - \SPIM:BSPIM:count_0\ * \SPIM:BSPIM:is_spi_done\ - + \SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_0\ - + \SPIM:BSPIM:state_1\ * \SPIM:BSPIM:state_0\ * - !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * - \SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * - !\SPIM:BSPIM:count_0\ * !\SPIM:BSPIM:tx_status_1\ + Clock = (ClockBlock_BUS_CLK) => Global + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + Main Equation : 1 pterm + ( + \Timer_1:TimerUDB:timer_enable\ * \Timer_1:TimerUDB:run_mode\ * + \Timer_1:TimerUDB:per_zero\ * !\Timer_1:TimerUDB:trig_disable\ ); - Output = \SPIM:BSPIM:state_1\ (fanout=14) + Output = \Timer_1:TimerUDB:trig_disable\ (fanout=2) Properties : { } - [McSlotId=2]: MacroCell: Name=\SPIM:BSPIM:tx_status_4\, Mode=(Combinatorial) @ [UDB=(2,3)][LB=0][MC=2] - Total # of inputs : 3 + [McSlotId=2]: MacroCell: Name=\Timer_1:TimerUDB:status_tc\, Mode=(Combinatorial) @ [UDB=(2,0)][LB=0][MC=2] + Total # of inputs : 2 Total # of product terms : 1 Clock Enable: True Main Equation : 1 pterm ( - !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * - !\SPIM:BSPIM:state_0\ + \Timer_1:TimerUDB:run_mode\ * \Timer_1:TimerUDB:per_zero\ ); - Output = \SPIM:BSPIM:tx_status_4\ (fanout=1) + Output = \Timer_1:TimerUDB:status_tc\ (fanout=1) Properties : { } - [McSlotId=3]: (empty) -} - -LAB@[UDB=(2,3)][LB=1] #macrocells=4, #inputs=10, #pterms=8 -{ - [McSlotId=0]: MacroCell: Name=\SPIM:BSPIM:load_cond\, Mode=(T-Register) @ [UDB=(2,3)][LB=1][MC=0] - Total # of inputs : 9 - Total # of product terms : 4 + [McSlotId=3]: MacroCell: Name=\Timer_1:TimerUDB:run_mode\, Mode=(D-Register) @ [UDB=(2,0)][LB=0][MC=3] + Total # of inputs : 1 + Total # of product terms : 1 List of special equations: - Clock = (\SPIM:Net_276\) => Global - Clock Enable: True - Main Equation : 4 pterms + Clock = (ClockBlock_BUS_CLK) => Global + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + Main Equation : 1 pterm ( - !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:count_4\ * - !\SPIM:BSPIM:count_3\ * !\SPIM:BSPIM:count_2\ * - !\SPIM:BSPIM:count_1\ * !\SPIM:BSPIM:count_0\ * - \SPIM:BSPIM:load_cond\ - + \SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * - !\SPIM:BSPIM:state_0\ * !\SPIM:BSPIM:load_cond\ - + \SPIM:BSPIM:state_1\ * !\SPIM:BSPIM:count_4\ * - !\SPIM:BSPIM:count_3\ * !\SPIM:BSPIM:count_2\ * - !\SPIM:BSPIM:count_1\ * !\SPIM:BSPIM:count_0\ * - \SPIM:BSPIM:load_cond\ - + \SPIM:BSPIM:state_0\ * !\SPIM:BSPIM:count_4\ * - !\SPIM:BSPIM:count_3\ * !\SPIM:BSPIM:count_2\ * - !\SPIM:BSPIM:count_1\ * !\SPIM:BSPIM:count_0\ * - \SPIM:BSPIM:load_cond\ + \Timer_1:TimerUDB:control_7\ ); - Output = \SPIM:BSPIM:load_cond\ (fanout=1) + Output = \Timer_1:TimerUDB:run_mode\ (fanout=3) Properties : { } +} - [McSlotId=1]: MacroCell: Name=Net_479, Mode=(D-Register) @ [UDB=(2,3)][LB=1][MC=1] - Total # of inputs : 4 - Total # of product terms : 3 - List of special equations: - Clock = (\SPIM:Net_276\) => Global - Clock Enable: True - Main Equation : 3 pterms - !( - !Net_479 * !\SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_0\ - + !\SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_1\ * - \SPIM:BSPIM:state_0\ - + \SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_1\ * - !\SPIM:BSPIM:state_0\ - ); - Output = Net_479 (fanout=2) +datapathcell: Name =\Timer_1:TimerUDB:sT16:timerdp:u0\ + PORT MAP ( + clock => ClockBlock_BUS_CLK , + cs_addr_1 => \Timer_1:TimerUDB:timer_enable\ , + cs_addr_0 => \Timer_1:TimerUDB:per_zero\ , + chain_out => \Timer_1:TimerUDB:sT16:timerdp:carry\ , + clk_en => ClockBlock_1k__SYNC_OUT ); + Properties: + { + a0_init = "00000000" + a1_init = "00000000" + ce0_sync = 1 + ce1_sync = 1 + cl0_sync = 1 + cl1_sync = 1 + cmsb_sync = 1 + co_msb_sync = 1 + cy_dpconfig = "0000000001000000000000000100000001000000010000000000000010000000000000001000000000000000100000000000000010000000000000001000000011111111000000001111111111111111000000000000000000000001000000000000000000011000" + d0_init = "00000000" + d1_init = "00000000" + f0_blk_sync = 1 + f0_bus_sync = 1 + f1_blk_sync = 1 + f1_bus_sync = 1 + ff0_sync = 1 + ff1_sync = 1 + ov_msb_sync = 1 + so_sync = 1 + z0_sync = 1 + z1_sync = 1 + } + Clock Polarity: Active High + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + Next in chain : \Timer_1:TimerUDB:sT16:timerdp:u1\ + +statusicell: Name =\Timer_1:TimerUDB:nrstSts:stsreg\ + PORT MAP ( + clock => ClockBlock_BUS_CLK , + status_3 => \Timer_1:TimerUDB:status_3\ , + status_2 => \Timer_1:TimerUDB:status_2\ , + status_0 => \Timer_1:TimerUDB:status_tc\ , + clk_en => ClockBlock_1k__SYNC_OUT ); + Properties: + { + cy_force_order = 1 + cy_int_mask = "1111111" + cy_md_select = "0000011" + } + Clock Polarity: Active High + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + +controlcell: Name =\Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\ + PORT MAP ( + control_7 => \Timer_1:TimerUDB:control_7\ , + control_6 => \Timer_1:TimerUDB:control_6\ , + control_5 => \Timer_1:TimerUDB:control_5\ , + control_4 => \Timer_1:TimerUDB:control_4\ , + control_3 => \Timer_1:TimerUDB:control_3\ , + control_2 => \Timer_1:TimerUDB:control_2\ , + control_1 => \Timer_1:TimerUDB:control_1\ , + control_0 => \Timer_1:TimerUDB:control_0\ ); + Properties: + { + cy_ctrl_mode_0 = "00000000" + cy_ctrl_mode_1 = "00000000" + cy_ext_reset = 0 + cy_force_order = 1 + cy_init_value = "00000000" + } + Clock Enable: True + +UDB [UDB=(2,1)] is empty. +UDB [UDB=(2,2)] is empty. +UDB [UDB=(2,3)] contents: +LAB@[UDB=(2,3)][LB=0] #macrocells=3, #inputs=11, #pterms=6 +{ + [McSlotId=0]: MacroCell: Name=\SPIM:BSPIM:rx_status_6\, Mode=(Combinatorial) @ [UDB=(2,3)][LB=0][MC=0] + Total # of inputs : 6 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + ( + !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * + !\SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * + \SPIM:BSPIM:count_0\ * \SPIM:BSPIM:rx_status_4\ + ); + Output = \SPIM:BSPIM:rx_status_6\ (fanout=1) Properties : { } - [McSlotId=2]: MacroCell: Name=\SPIM:BSPIM:load_rx_data\, Mode=(D-Register) @ [UDB=(2,3)][LB=1][MC=2] + [McSlotId=1]: MacroCell: Name=\UART_1:BUART:tx_state_0\, Mode=(T-Register) @ [UDB=(2,3)][LB=0][MC=1] + Total # of inputs : 5 + Total # of product terms : 4 + List of special equations: + Clock = (Net_191) => Global + Clock Enable: True + Main Equation : 4 pterms + ( + !\UART_1:BUART:tx_state_1\ * !\UART_1:BUART:tx_state_0\ * + !\UART_1:BUART:tx_fifo_empty\ * !\UART_1:BUART:tx_state_2\ + + !\UART_1:BUART:tx_state_1\ * !\UART_1:BUART:tx_state_0\ * + !\UART_1:BUART:tx_fifo_empty\ * \UART_1:BUART:tx_bitclk\ + + \UART_1:BUART:tx_state_1\ * \UART_1:BUART:tx_state_0\ * + \UART_1:BUART:tx_fifo_empty\ * \UART_1:BUART:tx_bitclk\ + + \UART_1:BUART:tx_state_0\ * !\UART_1:BUART:tx_state_2\ * + \UART_1:BUART:tx_bitclk\ + ); + Output = \UART_1:BUART:tx_state_0\ (fanout=7) + Properties : + { + } + + [McSlotId=2]: (empty) + [McSlotId=3]: MacroCell: Name=\UART_1:BUART:tx_status_0\, Mode=(Combinatorial) @ [UDB=(2,3)][LB=0][MC=3] Total # of inputs : 5 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + ( + !\UART_1:BUART:tx_state_1\ * !\UART_1:BUART:tx_state_0\ * + \UART_1:BUART:tx_fifo_empty\ * \UART_1:BUART:tx_state_2\ * + \UART_1:BUART:tx_bitclk\ + ); + Output = \UART_1:BUART:tx_status_0\ (fanout=1) + Properties : + { + } +} + +LAB@[UDB=(2,3)][LB=1] #macrocells=3, #inputs=2, #pterms=2 +{ + [McSlotId=0]: MacroCell: Name=\UART_1:BUART:tx_bitclk\, Mode=(D-Register) @ [UDB=(2,3)][LB=1][MC=0] + Total # of inputs : 1 Total # of product terms : 1 List of special equations: - Clock = (\SPIM:Net_276\) => Global + Clock = (Net_191) => Global Clock Enable: True Main Equation : 1 pterm ( - !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * - !\SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * - \SPIM:BSPIM:count_0\ + !\UART_1:BUART:tx_bitclk_dp\ ); - Output = \SPIM:BSPIM:load_rx_data\ (fanout=1) + Output = \UART_1:BUART:tx_bitclk\ (fanout=6) Properties : { } - [McSlotId=3]: MacroCell: Name=\SPIM:BSPIM:dpcounter_one\, Mode=(Combinatorial) @ [UDB=(2,3)][LB=1][MC=3] - Total # of inputs : 5 + [McSlotId=1]: MacroCell: Name=\UART_1:BUART:tx_bitclk_enable_pre\, Mode=(Combinatorial) @ [UDB=(2,3)][LB=1][MC=1] + Total # of inputs : 1 Total # of product terms : 1 Clock Enable: True Main Equation : 1 pterm ( - !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * - !\SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * - \SPIM:BSPIM:count_0\ + !\UART_1:BUART:tx_bitclk_dp\ ); - Output = \SPIM:BSPIM:dpcounter_one\ (fanout=1) + Output = \UART_1:BUART:tx_bitclk_enable_pre\ (fanout=1) + Properties : + { + } + + [McSlotId=2]: (empty) + [McSlotId=3]: MacroCell: Name=\UART_1:BUART:tx_status_2\, Mode=(Combinatorial) @ [UDB=(2,3)][LB=1][MC=3] + Total # of inputs : 1 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + ( + !\UART_1:BUART:tx_fifo_notfull\ + ); + Output = \UART_1:BUART:tx_status_2\ (fanout=1) Properties : { } } -statusicell: Name =\SPIM:BSPIM:TxStsReg\ +datapathcell: Name =\UART_1:BUART:sTX:TxShifter:u0\ PORT MAP ( - clock => \SPIM:Net_276\ , - status_4 => \SPIM:BSPIM:tx_status_4\ , - status_3 => \SPIM:BSPIM:dpcounter_one\ , - status_2 => \SPIM:BSPIM:tx_status_2\ , - status_1 => \SPIM:BSPIM:tx_status_1\ , - status_0 => \SPIM:BSPIM:tx_status_0\ ); + clock => Net_191 , + cs_addr_2 => \UART_1:BUART:tx_state_1\ , + cs_addr_1 => \UART_1:BUART:tx_state_0\ , + cs_addr_0 => \UART_1:BUART:tx_bitclk_enable_pre\ , + so_comb => \UART_1:BUART:tx_shift_out\ , + f0_bus_stat_comb => \UART_1:BUART:tx_fifo_notfull\ , + f0_blk_stat_comb => \UART_1:BUART:tx_fifo_empty\ ); + Properties: + { + a0_init = "00000000" + a1_init = "00000000" + ce0_sync = 1 + ce1_sync = 1 + cl0_sync = 1 + cl1_sync = 1 + cmsb_sync = 1 + co_msb_sync = 1 + cy_dpconfig = "0000000000000000000000000000000000000000000000000000000011000000000000000000000000000010010000000000000000000000000000000000000011111111000000001111111111111111000000000000000001000100111100000000000000001100" + d0_init = "00000000" + d1_init = "00000000" + f0_blk_sync = 1 + f0_bus_sync = 1 + f1_blk_sync = 1 + f1_bus_sync = 1 + ff0_sync = 1 + ff1_sync = 1 + ov_msb_sync = 1 + so_sync = 1 + z0_sync = 1 + z1_sync = 1 + } + Clock Polarity: Active High + Clock Enable: True + +statusicell: Name =\UART_1:BUART:sTX:TxSts\ + PORT MAP ( + clock => Net_191 , + status_3 => \UART_1:BUART:tx_fifo_notfull\ , + status_2 => \UART_1:BUART:tx_status_2\ , + status_1 => \UART_1:BUART:tx_fifo_empty\ , + status_0 => \UART_1:BUART:tx_status_0\ ); Properties: { cy_force_order = 1 - cy_int_mask = "0000000" - cy_md_select = "0001001" + cy_int_mask = "1111111" + cy_md_select = "0000001" } Clock Polarity: Active High Clock Enable: True @@ -2298,190 +2735,106 @@ count7cell: Name =\SPIM:BSPIM:BitCounter\ Clock Enable: True UDB [UDB=(2,5)] contents: -LAB@[UDB=(2,5)][LB=0] #macrocells=4, #inputs=12, #pterms=8 +LAB@[UDB=(2,5)][LB=0] #macrocells=3, #inputs=11, #pterms=8 { - [McSlotId=0]: MacroCell: Name=\SPIM:BSPIM:rx_status_6\, Mode=(Combinatorial) @ [UDB=(2,5)][LB=0][MC=0] - Total # of inputs : 6 - Total # of product terms : 1 + [McSlotId=0]: MacroCell: Name=\SPIM:BSPIM:cnt_enable\, Mode=(T-Register) @ [UDB=(2,5)][LB=0][MC=0] + Total # of inputs : 10 + Total # of product terms : 4 + List of special equations: + Clock = (\SPIM:Net_276\) => Global Clock Enable: True - Main Equation : 1 pterm + Main Equation : 4 pterms ( + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * + !\SPIM:BSPIM:state_0\ * \SPIM:BSPIM:cnt_enable\ + + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * + \SPIM:BSPIM:state_0\ * !\SPIM:BSPIM:cnt_enable\ + + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_0\ * !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * !\SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * - \SPIM:BSPIM:count_0\ * \SPIM:BSPIM:rx_status_4\ + \SPIM:BSPIM:count_0\ * \SPIM:BSPIM:is_spi_done\ * + \SPIM:BSPIM:cnt_enable\ + + \SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_0\ * + \SPIM:BSPIM:cnt_enable\ ); - Output = \SPIM:BSPIM:rx_status_6\ (fanout=1) + Output = \SPIM:BSPIM:cnt_enable\ (fanout=3) Properties : { } - [McSlotId=1]: MacroCell: Name=\UART_1:BUART:tx_state_0\, Mode=(T-Register) @ [UDB=(2,5)][LB=0][MC=1] - Total # of inputs : 5 + [McSlotId=1]: MacroCell: Name=\SPIM:BSPIM:state_1\, Mode=(D-Register) @ [UDB=(2,5)][LB=0][MC=1] + Total # of inputs : 10 Total # of product terms : 4 List of special equations: - Clock = (Net_191) => Global + Clock = (\SPIM:Net_276\) => Global Clock Enable: True Main Equation : 4 pterms - ( - !\UART_1:BUART:tx_state_1\ * !\UART_1:BUART:tx_state_0\ * - !\UART_1:BUART:tx_fifo_empty\ * !\UART_1:BUART:tx_state_2\ - + !\UART_1:BUART:tx_state_1\ * !\UART_1:BUART:tx_state_0\ * - !\UART_1:BUART:tx_fifo_empty\ * \UART_1:BUART:tx_bitclk\ - + \UART_1:BUART:tx_state_1\ * \UART_1:BUART:tx_state_0\ * - \UART_1:BUART:tx_fifo_empty\ * \UART_1:BUART:tx_bitclk\ - + \UART_1:BUART:tx_state_0\ * !\UART_1:BUART:tx_state_2\ * - \UART_1:BUART:tx_bitclk\ - ); - Output = \UART_1:BUART:tx_state_0\ (fanout=7) - Properties : - { - } - - [McSlotId=2]: MacroCell: Name=\UART_1:BUART:tx_state_1\, Mode=(T-Register) @ [UDB=(2,5)][LB=0][MC=2] - Total # of inputs : 5 - Total # of product terms : 3 - List of special equations: - Clock = (Net_191) => Global - Clock Enable: True - Main Equation : 3 pterms - ( - \UART_1:BUART:tx_state_1\ * \UART_1:BUART:tx_state_0\ * - \UART_1:BUART:tx_bitclk\ - + \UART_1:BUART:tx_state_1\ * !\UART_1:BUART:tx_state_2\ * - \UART_1:BUART:tx_bitclk\ * !\UART_1:BUART:tx_counter_dp\ - + \UART_1:BUART:tx_state_0\ * !\UART_1:BUART:tx_state_2\ * - \UART_1:BUART:tx_bitclk\ - ); - Output = \UART_1:BUART:tx_state_1\ (fanout=7) - Properties : - { - } - - [McSlotId=3]: MacroCell: Name=\UART_1:BUART:tx_status_0\, Mode=(Combinatorial) @ [UDB=(2,5)][LB=0][MC=3] - Total # of inputs : 5 - Total # of product terms : 1 - Clock Enable: True - Main Equation : 1 pterm - ( - !\UART_1:BUART:tx_state_1\ * !\UART_1:BUART:tx_state_0\ * - \UART_1:BUART:tx_fifo_empty\ * \UART_1:BUART:tx_state_2\ * - \UART_1:BUART:tx_bitclk\ - ); - Output = \UART_1:BUART:tx_status_0\ (fanout=1) - Properties : - { - } -} - -LAB@[UDB=(2,5)][LB=1] #macrocells=2, #inputs=1, #pterms=1 -{ - [McSlotId=0]: MacroCell: Name=\UART_1:BUART:tx_bitclk\, Mode=(D-Register) @ [UDB=(2,5)][LB=1][MC=0] - Total # of inputs : 1 - Total # of product terms : 1 - List of special equations: - Clock = (Net_191) => Global - Clock Enable: True - Main Equation : 1 pterm - ( - !\UART_1:BUART:tx_bitclk_dp\ + !( + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * + !\SPIM:BSPIM:state_0\ + + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_0\ * + !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * + !\SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * + \SPIM:BSPIM:count_0\ * \SPIM:BSPIM:is_spi_done\ + + \SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_0\ + + \SPIM:BSPIM:state_1\ * \SPIM:BSPIM:state_0\ * + !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * + \SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * + !\SPIM:BSPIM:count_0\ * !\SPIM:BSPIM:tx_status_1\ ); - Output = \UART_1:BUART:tx_bitclk\ (fanout=6) + Output = \SPIM:BSPIM:state_1\ (fanout=14) Properties : { } - [McSlotId=1]: MacroCell: Name=\UART_1:BUART:tx_bitclk_enable_pre\, Mode=(Combinatorial) @ [UDB=(2,5)][LB=1][MC=1] - Total # of inputs : 1 + [McSlotId=2]: MacroCell: Name=\SPIM:BSPIM:tx_status_4\, Mode=(Combinatorial) @ [UDB=(2,5)][LB=0][MC=2] + Total # of inputs : 3 Total # of product terms : 1 Clock Enable: True Main Equation : 1 pterm ( - !\UART_1:BUART:tx_bitclk_dp\ + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * + !\SPIM:BSPIM:state_0\ ); - Output = \UART_1:BUART:tx_bitclk_enable_pre\ (fanout=1) + Output = \SPIM:BSPIM:tx_status_4\ (fanout=1) Properties : { } - [McSlotId=2]: (empty) [McSlotId=3]: (empty) } -datapathcell: Name =\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\ - PORT MAP ( - clock => Net_191 , - cs_addr_0 => \UART_1:BUART:counter_load_not\ , - cl0_comb => \UART_1:BUART:tx_bitclk_dp\ , - cl1_comb => \UART_1:BUART:tx_counter_dp\ ); - Properties: - { - a0_init = "00000000" - a1_init = "00000000" - ce0_sync = 1 - ce1_sync = 1 - cl0_sync = 1 - cl1_sync = 1 - cmsb_sync = 1 - co_msb_sync = 1 - cy_dpconfig = "1010100001000000001000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011111111000000001111111100000111001000000100000000000101111100000000000000001000" - d0_init = "00000000" - d1_init = "00000000" - f0_blk_sync = 1 - f0_bus_sync = 1 - f1_blk_sync = 1 - f1_bus_sync = 1 - ff0_sync = 1 - ff1_sync = 1 - ov_msb_sync = 1 - so_sync = 1 - z0_sync = 1 - z1_sync = 1 - } - Clock Polarity: Active High - Clock Enable: True - -statusicell: Name =\SPIM:BSPIM:RxStsReg\ - PORT MAP ( - clock => \SPIM:Net_276\ , - status_6 => \SPIM:BSPIM:rx_status_6\ , - status_5 => \SPIM:BSPIM:rx_status_5\ , - status_4 => \SPIM:BSPIM:rx_status_4\ ); - Properties: - { - cy_force_order = 1 - cy_int_mask = "0000000" - cy_md_select = "1000000" - } - Clock Polarity: Active High - Clock Enable: True - -UDB [UDB=(3,0)] is empty. -UDB [UDB=(3,1)] is empty. -UDB [UDB=(3,2)] is empty. -UDB [UDB=(3,3)] contents: -LAB@[UDB=(3,3)][LB=0] #macrocells=4, #inputs=8, #pterms=7 +LAB@[UDB=(2,5)][LB=1] #macrocells=4, #inputs=10, #pterms=7 { - [McSlotId=0]: MacroCell: Name=Net_439, Mode=(T-Register) @ [UDB=(3,3)][LB=0][MC=0] - Total # of inputs : 4 - Total # of product terms : 3 + [McSlotId=0]: MacroCell: Name=\SPIM:BSPIM:load_cond\, Mode=(T-Register) @ [UDB=(2,5)][LB=1][MC=0] + Total # of inputs : 9 + Total # of product terms : 4 List of special equations: Clock = (\SPIM:Net_276\) => Global Clock Enable: True - Main Equation : 3 pterms + Main Equation : 4 pterms ( - !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * - !\SPIM:BSPIM:state_0\ * !Net_439 - + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * - \SPIM:BSPIM:state_0\ * Net_439 - + \SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_1\ * - \SPIM:BSPIM:state_0\ * !Net_439 + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:count_4\ * + !\SPIM:BSPIM:count_3\ * !\SPIM:BSPIM:count_2\ * + !\SPIM:BSPIM:count_1\ * !\SPIM:BSPIM:count_0\ * + \SPIM:BSPIM:load_cond\ + + \SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * + !\SPIM:BSPIM:state_0\ * !\SPIM:BSPIM:load_cond\ + + \SPIM:BSPIM:state_1\ * !\SPIM:BSPIM:count_4\ * + !\SPIM:BSPIM:count_3\ * !\SPIM:BSPIM:count_2\ * + !\SPIM:BSPIM:count_1\ * !\SPIM:BSPIM:count_0\ * + \SPIM:BSPIM:load_cond\ + + \SPIM:BSPIM:state_0\ * !\SPIM:BSPIM:count_4\ * + !\SPIM:BSPIM:count_3\ * !\SPIM:BSPIM:count_2\ * + !\SPIM:BSPIM:count_1\ * !\SPIM:BSPIM:count_0\ * + \SPIM:BSPIM:load_cond\ ); - Output = Net_439 (fanout=6) + Output = \SPIM:BSPIM:load_cond\ (fanout=1) Properties : { } - [McSlotId=1]: MacroCell: Name=\SPIM:BSPIM:ld_ident\, Mode=(T-Register) @ [UDB=(3,3)][LB=0][MC=1] + [McSlotId=1]: MacroCell: Name=\SPIM:BSPIM:ld_ident\, Mode=(T-Register) @ [UDB=(2,5)][LB=1][MC=1] Total # of inputs : 4 Total # of product terms : 2 List of special equations: @@ -2499,164 +2852,139 @@ LAB@[UDB=(3,3)][LB=0] #macrocells=4, #inputs=8, #pterms=7 { } - [McSlotId=2]: MacroCell: Name=Net_30, Mode=(Combinatorial) @ [UDB=(3,3)][LB=0][MC=2] - Total # of inputs : 2 + [McSlotId=2]: MacroCell: Name=\SPIM:BSPIM:load_rx_data\, Mode=(D-Register) @ [UDB=(2,5)][LB=1][MC=2] + Total # of inputs : 5 Total # of product terms : 1 + List of special equations: + Clock = (\SPIM:Net_276\) => Global Clock Enable: True Main Equation : 1 pterm ( - !Net_439 * \SPIM:BSPIM:mosi_hs_reg\ - ); - Output = Net_30 (fanout=1) - Properties : - { - } - - [McSlotId=3]: MacroCell: Name=Net_419, Mode=(Combinatorial) @ [UDB=(3,3)][LB=0][MC=3] - Total # of inputs : 3 - Total # of product terms : 1 - Clock Enable: True - Main Equation : 1 pterm - !( - !Net_439 * !mywire_1_1 * !mywire_1_0 - ); - Output = Net_419 (fanout=1) - Properties : - { - } -} - -LAB@[UDB=(3,3)][LB=1] #macrocells=3, #inputs=3, #pterms=3 -{ - [McSlotId=0]: MacroCell: Name=Net_422, Mode=(Combinatorial) @ [UDB=(3,3)][LB=1][MC=0] - Total # of inputs : 3 - Total # of product terms : 1 - Clock Enable: True - Main Equation : 1 pterm - !( - !Net_439 * !mywire_1_1 * mywire_1_0 - ); - Output = Net_422 (fanout=1) - Properties : - { - } - - [McSlotId=1]: MacroCell: Name=Net_425, Mode=(Combinatorial) @ [UDB=(3,3)][LB=1][MC=1] - Total # of inputs : 3 - Total # of product terms : 1 - Clock Enable: True - Main Equation : 1 pterm - !( - !Net_439 * mywire_1_1 * mywire_1_0 + !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * + !\SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * + \SPIM:BSPIM:count_0\ ); - Output = Net_425 (fanout=1) + Output = \SPIM:BSPIM:load_rx_data\ (fanout=1) Properties : { } - [McSlotId=2]: MacroCell: Name=Net_428, Mode=(Combinatorial) @ [UDB=(3,3)][LB=1][MC=2] - Total # of inputs : 3 + [McSlotId=3]: MacroCell: Name=\SPIM:BSPIM:dpcounter_one\, Mode=(Combinatorial) @ [UDB=(2,5)][LB=1][MC=3] + Total # of inputs : 5 Total # of product terms : 1 Clock Enable: True Main Equation : 1 pterm - !( - !Net_439 * mywire_1_1 * !mywire_1_0 + ( + !\SPIM:BSPIM:count_4\ * !\SPIM:BSPIM:count_3\ * + !\SPIM:BSPIM:count_2\ * !\SPIM:BSPIM:count_1\ * + \SPIM:BSPIM:count_0\ ); - Output = Net_428 (fanout=1) + Output = \SPIM:BSPIM:dpcounter_one\ (fanout=1) Properties : { } - - [McSlotId=3]: (empty) } -controlcell: Name =\SS:Async:ctrl_reg\ +statusicell: Name =\SPIM:BSPIM:TxStsReg\ PORT MAP ( - control_7 => \SS:control_7\ , - control_6 => \SS:control_6\ , - control_5 => \SS:control_5\ , - control_4 => \SS:control_4\ , - control_3 => \SS:control_3\ , - control_2 => \SS:control_2\ , - control_1 => mywire_1_1 , - control_0 => mywire_1_0 ); + clock => \SPIM:Net_276\ , + status_4 => \SPIM:BSPIM:tx_status_4\ , + status_3 => \SPIM:BSPIM:dpcounter_one\ , + status_2 => \SPIM:BSPIM:tx_status_2\ , + status_1 => \SPIM:BSPIM:tx_status_1\ , + status_0 => \SPIM:BSPIM:tx_status_0\ ); Properties: { - cy_ctrl_mode_0 = "00000000" - cy_ctrl_mode_1 = "00000000" - cy_ext_reset = 0 cy_force_order = 1 - cy_init_value = "00000000" + cy_int_mask = "0000000" + cy_md_select = "0001001" } + Clock Polarity: Active High Clock Enable: True -UDB [UDB=(3,4)] contents: -LAB@[UDB=(3,4)][LB=0] #macrocells=3, #inputs=3, #pterms=3 +UDB [UDB=(3,0)] contents: +LAB@[UDB=(3,0)][LB=1] #macrocells=1, #inputs=5, #pterms=3 { - [McSlotId=0]: MacroCell: Name=\SPIM:BSPIM:mosi_from_dp_reg\, Mode=(D-Register) @ [UDB=(3,4)][LB=0][MC=0] - Total # of inputs : 1 - Total # of product terms : 1 + [McSlotId=0]: MacroCell: Name=\UART_1:BUART:tx_state_1\, Mode=(T-Register) @ [UDB=(3,0)][LB=1][MC=0] + Total # of inputs : 5 + Total # of product terms : 3 List of special equations: - Clock = (\SPIM:Net_276\) => Global - Clock Enable: True - Main Equation : 1 pterm - ( - \SPIM:BSPIM:mosi_from_dp\ - ); - Output = \SPIM:BSPIM:mosi_from_dp_reg\ (fanout=1) - Properties : - { - } - - [McSlotId=1]: MacroCell: Name=Net_234, Mode=(Combinatorial) @ [UDB=(3,4)][LB=0][MC=1] - Total # of inputs : 1 - Total # of product terms : 1 - Clock Enable: True - Main Equation : 1 pterm - ( - !\UART_1:BUART:txn\ - ); - Output = Net_234 (fanout=1) - Properties : - { - } - - [McSlotId=2]: MacroCell: Name=\UART_1:BUART:tx_status_2\, Mode=(Combinatorial) @ [UDB=(3,4)][LB=0][MC=2] - Total # of inputs : 1 - Total # of product terms : 1 + Clock = (Net_191) => Global Clock Enable: True - Main Equation : 1 pterm + Main Equation : 3 pterms ( - !\UART_1:BUART:tx_fifo_notfull\ + \UART_1:BUART:tx_state_1\ * \UART_1:BUART:tx_state_0\ * + \UART_1:BUART:tx_bitclk\ + + \UART_1:BUART:tx_state_1\ * !\UART_1:BUART:tx_state_2\ * + \UART_1:BUART:tx_bitclk\ * !\UART_1:BUART:tx_counter_dp\ + + \UART_1:BUART:tx_state_0\ * !\UART_1:BUART:tx_state_2\ * + \UART_1:BUART:tx_bitclk\ ); - Output = \UART_1:BUART:tx_status_2\ (fanout=1) + Output = \UART_1:BUART:tx_state_1\ (fanout=7) Properties : { } + [McSlotId=1]: (empty) + [McSlotId=2]: (empty) [McSlotId=3]: (empty) } -statusicell: Name =\UART_1:BUART:sTX:TxSts\ +datapathcell: Name =\Timer_1:TimerUDB:sT16:timerdp:u1\ + PORT MAP ( + clock => ClockBlock_BUS_CLK , + cs_addr_1 => \Timer_1:TimerUDB:timer_enable\ , + cs_addr_0 => \Timer_1:TimerUDB:per_zero\ , + z0_comb => \Timer_1:TimerUDB:per_zero\ , + f0_bus_stat_comb => \Timer_1:TimerUDB:status_3\ , + f0_blk_stat_comb => \Timer_1:TimerUDB:status_2\ , + chain_in => \Timer_1:TimerUDB:sT16:timerdp:carry\ , + clk_en => ClockBlock_1k__SYNC_OUT ); + Properties: + { + a0_init = "00000000" + a1_init = "00000000" + ce0_sync = 1 + ce1_sync = 1 + cl0_sync = 1 + cl1_sync = 1 + cmsb_sync = 1 + co_msb_sync = 1 + cy_dpconfig = "0000000001000000000000000100000001000000010000000000000010000000000000001000000000000000100000000000000010000000000000001000000011111111000000001111111111111111100000110000000000000001000000110000000000011000" + d0_init = "00000000" + d1_init = "00000000" + f0_blk_sync = 1 + f0_bus_sync = 1 + f1_blk_sync = 1 + f1_bus_sync = 1 + ff0_sync = 1 + ff1_sync = 1 + ov_msb_sync = 1 + so_sync = 1 + z0_sync = 1 + z1_sync = 1 + } + Clock Polarity: Active High + Clock Enable: PosEdge(ClockBlock_1k__SYNC_OUT) + Previous in chain : \Timer_1:TimerUDB:sT16:timerdp:u0\ + +synccell: Name =ClockBlock_1k__SYNC PORT MAP ( - clock => Net_191 , - status_3 => \UART_1:BUART:tx_fifo_notfull\ , - status_2 => \UART_1:BUART:tx_status_2\ , - status_1 => \UART_1:BUART:tx_fifo_empty\ , - status_0 => \UART_1:BUART:tx_status_0\ ); + in => ClockBlock_1k , + out => ClockBlock_1k__SYNC_OUT , + clock => ClockBlock_BUS_CLK ); Properties: { - cy_force_order = 1 - cy_int_mask = "1111111" - cy_md_select = "0000001" } Clock Polarity: Active High Clock Enable: True -UDB [UDB=(3,5)] contents: -LAB@[UDB=(3,5)][LB=0] #macrocells=2, #inputs=7, #pterms=8 +UDB [UDB=(3,1)] is empty. +UDB [UDB=(3,2)] is empty. +UDB [UDB=(3,3)] contents: +LAB@[UDB=(3,3)][LB=0] #macrocells=2, #inputs=7, #pterms=8 { - [McSlotId=0]: MacroCell: Name=\UART_1:BUART:txn\, Mode=(D-Register) @ [UDB=(3,5)][LB=0][MC=0] + [McSlotId=0]: MacroCell: Name=\UART_1:BUART:txn\, Mode=(D-Register) @ [UDB=(3,3)][LB=0][MC=0] Total # of inputs : 7 Total # of product terms : 5 List of special equations: @@ -2680,7 +3008,7 @@ LAB@[UDB=(3,5)][LB=0] #macrocells=2, #inputs=7, #pterms=8 { } - [McSlotId=1]: MacroCell: Name=\UART_1:BUART:tx_state_2\, Mode=(T-Register) @ [UDB=(3,5)][LB=0][MC=1] + [McSlotId=1]: MacroCell: Name=\UART_1:BUART:tx_state_2\, Mode=(T-Register) @ [UDB=(3,3)][LB=0][MC=1] Total # of inputs : 5 Total # of product terms : 3 List of special equations: @@ -2704,9 +3032,9 @@ LAB@[UDB=(3,5)][LB=0] #macrocells=2, #inputs=7, #pterms=8 [McSlotId=3]: (empty) } -LAB@[UDB=(3,5)][LB=1] #macrocells=2, #inputs=10, #pterms=8 +LAB@[UDB=(3,3)][LB=1] #macrocells=2, #inputs=10, #pterms=8 { - [McSlotId=0]: MacroCell: Name=\SPIM:BSPIM:mosi_hs_reg\, Mode=(D-Register) @ [UDB=(3,5)][LB=1][MC=0] + [McSlotId=0]: MacroCell: Name=\SPIM:BSPIM:mosi_hs_reg\, Mode=(D-Register) @ [UDB=(3,3)][LB=1][MC=0] Total # of inputs : 6 Total # of product terms : 6 List of special equations: @@ -2732,7 +3060,7 @@ LAB@[UDB=(3,5)][LB=1] #macrocells=2, #inputs=10, #pterms=8 { } - [McSlotId=1]: MacroCell: Name=\UART_1:BUART:counter_load_not\, Mode=(Combinatorial) @ [UDB=(3,5)][LB=1][MC=1] + [McSlotId=1]: MacroCell: Name=\UART_1:BUART:counter_load_not\, Mode=(Combinatorial) @ [UDB=(3,3)][LB=1][MC=1] Total # of inputs : 4 Total # of product terms : 2 Clock Enable: True @@ -2752,15 +3080,12 @@ LAB@[UDB=(3,5)][LB=1] #macrocells=2, #inputs=10, #pterms=8 [McSlotId=3]: (empty) } -datapathcell: Name =\UART_1:BUART:sTX:TxShifter:u0\ +datapathcell: Name =\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\ PORT MAP ( clock => Net_191 , - cs_addr_2 => \UART_1:BUART:tx_state_1\ , - cs_addr_1 => \UART_1:BUART:tx_state_0\ , - cs_addr_0 => \UART_1:BUART:tx_bitclk_enable_pre\ , - so_comb => \UART_1:BUART:tx_shift_out\ , - f0_bus_stat_comb => \UART_1:BUART:tx_fifo_notfull\ , - f0_blk_stat_comb => \UART_1:BUART:tx_fifo_empty\ ); + cs_addr_0 => \UART_1:BUART:counter_load_not\ , + cl0_comb => \UART_1:BUART:tx_bitclk_dp\ , + cl1_comb => \UART_1:BUART:tx_counter_dp\ ); Properties: { a0_init = "00000000" @@ -2771,7 +3096,7 @@ datapathcell: Name =\UART_1:BUART:sTX:TxShifter:u0\ cl1_sync = 1 cmsb_sync = 1 co_msb_sync = 1 - cy_dpconfig = "0000000000000000000000000000000000000000000000000000000011000000000000000000000000000010010000000000000000000000000000000000000011111111000000001111111111111111000000000000000001000100111100000000000000001100" + cy_dpconfig = "1010100001000000001000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011111111000000001111111100000111001000000100000000000101111100000000000000001000" d0_init = "00000000" d1_init = "00000000" f0_blk_sync = 1 @@ -2788,6 +3113,200 @@ datapathcell: Name =\UART_1:BUART:sTX:TxShifter:u0\ Clock Polarity: Active High Clock Enable: True +UDB [UDB=(3,4)] contents: +LAB@[UDB=(3,4)][LB=0] #macrocells=2, #inputs=2, #pterms=2 +{ + [McSlotId=0]: MacroCell: Name=\SPIM:BSPIM:mosi_from_dp_reg\, Mode=(D-Register) @ [UDB=(3,4)][LB=0][MC=0] + Total # of inputs : 1 + Total # of product terms : 1 + List of special equations: + Clock = (\SPIM:Net_276\) => Global + Clock Enable: True + Main Equation : 1 pterm + ( + \SPIM:BSPIM:mosi_from_dp\ + ); + Output = \SPIM:BSPIM:mosi_from_dp_reg\ (fanout=1) + Properties : + { + } + + [McSlotId=1]: (empty) + [McSlotId=2]: MacroCell: Name=Net_234, Mode=(Combinatorial) @ [UDB=(3,4)][LB=0][MC=2] + Total # of inputs : 1 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + ( + !\UART_1:BUART:txn\ + ); + Output = Net_234 (fanout=1) + Properties : + { + } + + [McSlotId=3]: (empty) +} + +statusicell: Name =\SPIM:BSPIM:RxStsReg\ + PORT MAP ( + clock => \SPIM:Net_276\ , + status_6 => \SPIM:BSPIM:rx_status_6\ , + status_5 => \SPIM:BSPIM:rx_status_5\ , + status_4 => \SPIM:BSPIM:rx_status_4\ ); + Properties: + { + cy_force_order = 1 + cy_int_mask = "0000000" + cy_md_select = "1000000" + } + Clock Polarity: Active High + Clock Enable: True + +UDB [UDB=(3,5)] contents: +LAB@[UDB=(3,5)][LB=0] #macrocells=4, #inputs=9, #pterms=8 +{ + [McSlotId=0]: MacroCell: Name=Net_479, Mode=(D-Register) @ [UDB=(3,5)][LB=0][MC=0] + Total # of inputs : 4 + Total # of product terms : 3 + List of special equations: + Clock = (\SPIM:Net_276\) => Global + Clock Enable: True + Main Equation : 3 pterms + !( + !Net_479 * !\SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_0\ + + !\SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_1\ * + \SPIM:BSPIM:state_0\ + + \SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_1\ * + !\SPIM:BSPIM:state_0\ + ); + Output = Net_479 (fanout=2) + Properties : + { + } + + [McSlotId=1]: MacroCell: Name=Net_439, Mode=(T-Register) @ [UDB=(3,5)][LB=0][MC=1] + Total # of inputs : 4 + Total # of product terms : 3 + List of special equations: + Clock = (\SPIM:Net_276\) => Global + Clock Enable: True + Main Equation : 3 pterms + ( + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * + !\SPIM:BSPIM:state_0\ * !Net_439 + + !\SPIM:BSPIM:state_2\ * !\SPIM:BSPIM:state_1\ * + \SPIM:BSPIM:state_0\ * Net_439 + + \SPIM:BSPIM:state_2\ * \SPIM:BSPIM:state_1\ * + \SPIM:BSPIM:state_0\ * !Net_439 + ); + Output = Net_439 (fanout=7) + Properties : + { + } + + [McSlotId=2]: MacroCell: Name=Net_30, Mode=(Combinatorial) @ [UDB=(3,5)][LB=0][MC=2] + Total # of inputs : 2 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + ( + !Net_439 * \SPIM:BSPIM:mosi_hs_reg\ + ); + Output = Net_30 (fanout=1) + Properties : + { + } + + [McSlotId=3]: MacroCell: Name=Net_419, Mode=(Combinatorial) @ [UDB=(3,5)][LB=0][MC=3] + Total # of inputs : 4 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + !( + !Net_439 * !mywire_1_2 * !mywire_1_1 * !mywire_1_0 + ); + Output = Net_419 (fanout=1) + Properties : + { + } +} + +LAB@[UDB=(3,5)][LB=1] #macrocells=4, #inputs=4, #pterms=4 +{ + [McSlotId=0]: MacroCell: Name=Net_422, Mode=(Combinatorial) @ [UDB=(3,5)][LB=1][MC=0] + Total # of inputs : 4 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + !( + !Net_439 * !mywire_1_2 * !mywire_1_1 * mywire_1_0 + ); + Output = Net_422 (fanout=1) + Properties : + { + } + + [McSlotId=1]: MacroCell: Name=Net_425, Mode=(Combinatorial) @ [UDB=(3,5)][LB=1][MC=1] + Total # of inputs : 4 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + !( + !Net_439 * !mywire_1_2 * mywire_1_1 * mywire_1_0 + ); + Output = Net_425 (fanout=1) + Properties : + { + } + + [McSlotId=2]: MacroCell: Name=Net_428, Mode=(Combinatorial) @ [UDB=(3,5)][LB=1][MC=2] + Total # of inputs : 4 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + !( + !Net_439 * !mywire_1_2 * mywire_1_1 * !mywire_1_0 + ); + Output = Net_428 (fanout=1) + Properties : + { + } + + [McSlotId=3]: MacroCell: Name=Net_585, Mode=(Combinatorial) @ [UDB=(3,5)][LB=1][MC=3] + Total # of inputs : 4 + Total # of product terms : 1 + Clock Enable: True + Main Equation : 1 pterm + !( + !Net_439 * mywire_1_2 * !mywire_1_1 * !mywire_1_0 + ); + Output = Net_585 (fanout=1) + Properties : + { + } +} + +controlcell: Name =\SS:Async:ctrl_reg\ + PORT MAP ( + control_7 => \SS:control_7\ , + control_6 => \SS:control_6\ , + control_5 => \SS:control_5\ , + control_4 => \SS:control_4\ , + control_3 => \SS:control_3\ , + control_2 => mywire_1_2 , + control_1 => mywire_1_1 , + control_0 => mywire_1_0 ); + Properties: + { + cy_ctrl_mode_0 = "00000000" + cy_ctrl_mode_1 = "00000000" + cy_ext_reset = 0 + cy_force_order = 1 + cy_init_value = "00000000" + } + Clock Enable: True + Intr hod @ [IntrHod=(0)]: empty Drq hod @ [DrqHod=(0)]: empty Port 0 contains the following IO cells: @@ -3347,6 +3866,46 @@ Pin : Name = Pin_4(0) { } +[IoId=4]: +Pin : Name = Pin_5(0) + Attributes: + In Group/Port: True + In Sync Option: AUTO + Out Sync Option: NOSYNC + Interrupt generated: False + Interrupt mode: NONE + Drive mode: RES_PULL_UP + VTrip: EITHER + Slew: FAST + Input Sync needed: False + Output Sync needed: False + SC shield enabled: False + POR State: ANY + LCD Mode: COMMON + Register Mode: RegComb + CaSense Mode: NEITHER + Treat as pin: True + Is OE Registered: False + Uses Analog: False + Can contain Digital: True + Is SIO: False + SIO Output Buf: NONREGULATED + SIO Input Buf: SINGLE_ENDED + SIO HiFreq: LOW + SIO Hyst: DISABLED + SIO Vtrip: MULTIPLIER_0_5 + SIO RefSel: VCC_IO + Required Capabilitites: DIGITAL, ROUTABLE + Initial Value: 1 + IO Voltage: 0 + PORT MAP ( + pa_out => Pin_5(0)__PA , + input => Net_585 , + pad => Pin_5(0)_PAD ); + Properties: + { + } + [IoId=7]: Pin : Name = Tx_1(0) Attributes: @@ -3462,37 +4021,38 @@ Port | Pin | Fixed | Type | Drive Mode | Name | Connectio | 1 | * | NONE | RES_PULL_UP | Pin_2(0) | In(Net_422) | 2 | * | NONE | RES_PULL_UP | Pin_3(0) | In(Net_428) | 3 | * | NONE | RES_PULL_UP | Pin_4(0) | In(Net_425) + | 4 | * | NONE | RES_PULL_UP | Pin_5(0) | In(Net_585) | 7 | * | NONE | CMOS_OUT | Tx_1(0) | In(Net_234) ---------------------------------------------------------------------------------- -Digital component placer commit/Report: Elapsed time ==> 0s.003ms -Digital Placement phase: Elapsed time ==> 1s.395ms +Digital component placer commit/Report: Elapsed time ==> 0s.005ms +Digital Placement phase: Elapsed time ==> 1s.451ms Routing successful. -Digital Routing phase: Elapsed time ==> 2s.255ms +Digital Routing phase: Elapsed time ==> 3s.163ms -Bitstream and API generation phase: Elapsed time ==> 0s.215ms +Bitstream and API generation phase: Elapsed time ==> 0s.247ms -Bitstream verification phase: Elapsed time ==> 0s.073ms +Bitstream verification phase: Elapsed time ==> 0s.088ms Timing report is in PSOC5_SPI_LSM303D_timing.html. -Static timing analysis phase: Elapsed time ==> 0s.512ms +Static timing analysis phase: Elapsed time ==> 0s.652ms -Data reporting phase: Elapsed time ==> 0s.001ms +Data reporting phase: Elapsed time ==> 0s.000ms -Design database save phase: Elapsed time ==> 0s.220ms +Design database save phase: Elapsed time ==> 0s.331ms -cydsfit: Elapsed time ==> 5s.413ms +cydsfit: Elapsed time ==> 6s.878ms -Fitter phase: Elapsed time ==> 5s.453ms -API generation phase: Elapsed time ==> 0s.801ms -Dependency generation phase: Elapsed time ==> 0s.004ms -Cleanup phase: Elapsed time ==> 0s.001ms +Fitter phase: Elapsed time ==> 6s.922ms +API generation phase: Elapsed time ==> 1s.277ms +Dependency generation phase: Elapsed time ==> 0s.015ms +Cleanup phase: Elapsed time ==> 0s.002ms diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.rt_log b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.rt_log index 7c75389..85a91b8 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.rt_log +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.rt_log @@ -13,19 +13,15 @@ I1206: Completed Reading of file PSOC5_SPI_LSM303D.sdc I1204: Reading architecture from file C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\dev/psoc5/route_arch-rrg.cydata I1206: Completed Reading of file C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\dev/psoc5/route_arch-rrg.cydata I1209: Started routing -I1223: Total Nets : 53 -I1212: Iteration 1 : 45 unrouted : 1 seconds -I1212: Iteration 2 : 19 unrouted : 0 seconds -I1212: Iteration 3 : 8 unrouted : 0 seconds -I1212: Iteration 4 : 6 unrouted : 0 seconds -I1212: Iteration 5 : 4 unrouted : 0 seconds -I1212: Iteration 6 : 4 unrouted : 0 seconds -I1212: Iteration 7 : 2 unrouted : 0 seconds -I1212: Iteration 8 : 2 unrouted : 0 seconds -I1212: Iteration 9 : 2 unrouted : 0 seconds -I1212: Iteration 10 : 0 unrouted : 0 seconds +I1223: Total Nets : 78 +I1212: Iteration 1 : 49 unrouted : 0 seconds +I1212: Iteration 2 : 20 unrouted : 1 seconds +I1212: Iteration 3 : 5 unrouted : 0 seconds +I1212: Iteration 4 : 4 unrouted : 0 seconds +I1212: Iteration 5 : 2 unrouted : 0 seconds +I1212: Iteration 6 : 0 unrouted : 0 seconds I1215: Routing is successful I1207: Completed routing I1210: Writing routes I1218: Exiting the router -I1224: Total Time : 2 seconds +I1224: Total Time : 3 seconds diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.sdc b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.sdc index 0ace657..80b21de 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.sdc +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.sdc @@ -1,6 +1,6 @@ # THIS FILE IS AUTOMATICALLY GENERATED -# Project: C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -# Date: Fri, 22 Mar 2013 09:33:30 GMT +# Project: C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj +# Date: Thu, 25 Jul 2013 14:49:01 GMT #set_units -time ns create_clock -name {CyIMO} -period 333.33333333333331 -waveform {0 166.666666666667} [list [get_pins {ClockBlock/imo}]] create_clock -name {CyPLL_OUT} -period 41.666666666666664 -waveform {0 20.8333333333333} [list [get_pins {ClockBlock/pllout}]] @@ -11,6 +11,6 @@ create_generated_clock -name {Clock_1} -source [get_pins {ClockBlock/clk_sync}] create_generated_clock -name {CyBUS_CLK} -source [get_pins {ClockBlock/clk_sync}] -edges {1 2 3} [list [get_pins {ClockBlock/clk_bus_glb}]] -# Component constraints for C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\TopDesign\TopDesign.cysch -# Project: C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -# Date: Fri, 22 Mar 2013 09:33:23 GMT +# Component constraints for C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\TopDesign\TopDesign.cysch +# Project: C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj +# Date: Thu, 25 Jul 2013 14:48:52 GMT diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.svd b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.svd index 478d670..57e21c2 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.svd +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.svd @@ -7,33 +7,252 @@ 32 - SS + Timer_1 No description available - 0x40006475 + 0x40006504 0 - 0x1 + 0x91 registers - SS_CONTROL_REG - No description available + Timer_1_COUNTER + UDB.A0 - Current Down Counter Value 0x0 + 16 + read-write + 0 + 0 + + + Timer_1_PERIOD + UDB.D0 - Assigned Period + 0x20 + 16 + read-write + 0 + 0 + + + Timer_1_Control_Reg + UDB Control Register - Assigned Control Register Value + 0x70 8 read-write 0 0 + + + CTRL_ENABLE + Enable the Timer + 7 + 7 + read-write + + + CTRL_CMODE + Capture Mode + 5 + 6 + read-write + + + CTRL_TEN + Trigger Enable Bit + 4 + 4 + read-write + + + CTRL_TMODE + Trigger Mode + 2 + 3 + read-write + + + CTRL_IC + Interrupt Count + 0 + 1 + read-write + + + + + Timer_1_STATUS_MASK + UDB Status bits Interrupt Mask Enable Register + 0x80 + 8 + read-write + 0 + 0 + + + TIMER_STS_TC + Enables the Interrupt on TC + 0 + 0 + read-only + + + TIMER_STS_CAPT + Enables the Interrupt on Capture + 1 + 1 + read-only + + + TIMER_STS_FIFO_FULL + FIFO Full Status + 2 + 2 + read-only + + + TIMER_STS_FIFO_NEMPTY + FIFO Empty status + 3 + 3 + read-only + + + + + Timer_1_STATUS_AUX_CTRL + UDB Auxilliary Control Register + 0x90 + 8 + read-write + 0 + 0 + + + FIFO0_CLR + FIFO0 clear + 0 + 0 + read-write + + + E_FIFO_CLR_0 + Normal FIFO operation + 0 + + + E_FIFO_CLR_1 + Clear FIFO state + 1 + + + + + FIFO1_CLR + FIFO1 clear + 1 + 1 + read-write + + + E_FIFO_CLR_0 + Normal FIFO operation + 0 + + + E_FIFO_CLR_1 + Clear FIFO state + 1 + + + + + FIFO0_LVL + FIFO level + 2 + 2 + read-write + + + E_FIFO_LVL_0 + FIFO LVL: input mode: FIFO not full; output mode: FIFO not empty + 0 + + + E_FIFO_LVL_1 + FIFO LVL: input mode: FIFO at least 1/2 empty; output mode: FIFO at least 1/2 full + 1 + + + + + FIFO1_LVL + FIFO level + 3 + 3 + read-write + + + E_FIFO_LVL_0 + FIFO LVL: input mode: FIFO not full; output mode: FIFO not empty + 0 + + + E_FIFO_LVL_1 + FIFO LVL: input mode: FIFO at least 1/2 empty; output mode: FIFO at least 1/2 full + 1 + + + + + INT_EN + No description available + 4 + 4 + read-write + + + E_INT_EN0 + Interrupt disabled + 0 + + + E_INT_EN1 + Interrupt enabled + 1 + + + + + CNT_START + FIFO0 clear + 5 + 5 + read-write + + + E_CNT_START0 + Disable counter + 0 + + + E_CNT_START1 + Enable counter + 1 + + + + UART_1 UART - 0x40006441 + 0x40006444 0 - 0x22 + 0x21 registers @@ -49,7 +268,7 @@ TX_UART_1_TX_STATUS TX status register - 0x21 + 0x20 8 read-write 0 @@ -87,5 +306,26 @@ + + SS + No description available + 0x40006471 + + 0 + 0x1 + registers + + + + SS_CONTROL_REG + No description available + 0x0 + 8 + read-write + 0 + 0 + + + \ No newline at end of file diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.tr b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.tr index b20202f..6f44570 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.tr +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.tr @@ -9,10 +9,12 @@ 3.3::Pad to Pad 4::Path Details for Clock Frequency Summary 4.1::Critical Path Report for Clock_1 - 4.2::Critical Path Report for SPIM_IntClock + 4.2::Critical Path Report for CyBUS_CLK + 4.3::Critical Path Report for SPIM_IntClock 5::Path Details for Clock Relationship Summary 5.1::Critical Path Report for (SPIM_IntClock:R vs. SPIM_IntClock:R) 5.2::Critical Path Report for (Clock_1:R vs. Clock_1:R) + 5.3::Critical Path Report for (CyBUS_CLK:R vs. CyBUS_CLK:R) ===================================================================== End of Table of Contents ##################################################################### @@ -21,13 +23,13 @@ 1::Clock Frequency Summary ===================================================================== Number of clocks: 7 -Clock: Clock_1 | Frequency: 43.85 MHz | Target: 0.92 MHz | -Clock: CyBUS_CLK | N/A | Target: 24.00 MHz | +Clock: Clock_1 | Frequency: 42.47 MHz | Target: 0.92 MHz | +Clock: CyBUS_CLK | Frequency: 43.36 MHz | Target: 24.00 MHz | Clock: CyILO | N/A | Target: 0.00 MHz | Clock: CyIMO | N/A | Target: 3.00 MHz | Clock: CyMASTER_CLK | N/A | Target: 24.00 MHz | Clock: CyPLL_OUT | N/A | Target: 24.00 MHz | -Clock: SPIM_IntClock | Frequency: 61.38 MHz | Target: 2.00 MHz | +Clock: SPIM_IntClock | Frequency: 52.40 MHz | Target: 2.00 MHz | ===================================================================== End of Clock Frequency Summary @@ -40,8 +42,9 @@ Clock: SPIM_IntClock | Frequency: 61.38 MHz | Target: 2.00 MHz | Launch Clock Capture Clock Constraint(R-R) Slack(R-R) Constraint(R-F) Slack(R-F) Constraint(F-F) Slack(F-F) Constraint(F-R) Slack(F-R) ------------- ------------- --------------- ---------- --------------- ---------- --------------- ---------- --------------- ---------- -Clock_1 Clock_1 1.08333e+006 1060528 N/A N/A N/A N/A N/A N/A -SPIM_IntClock SPIM_IntClock 500000 483708 N/A N/A N/A N/A N/A N/A +Clock_1 Clock_1 1.08333e+006 1059785 N/A N/A N/A N/A N/A N/A +CyBUS_CLK CyBUS_CLK 41666.7 18605 N/A N/A N/A N/A N/A N/A +SPIM_IntClock SPIM_IntClock 500000 480914 N/A N/A N/A N/A N/A N/A ===================================================================== End of Clock Relationship Summary @@ -59,7 +62,7 @@ All values are in Picoseconds Port Name Setup to Clk Clock Name:Phase ----------------- ------------ ---------------- -m_miso_pin(0)_PAD 41682 SPIM_IntClock:R +m_miso_pin(0)_PAD 41683 SPIM_IntClock:R 3.2::Clock to Out @@ -67,17 +70,19 @@ m_miso_pin(0)_PAD 41682 SPIM_IntClock:R Port Name Clock to Out Clock Name:Phase ----------------- ------------ ---------------- -Pin_1(0)_PAD 33745 CyBUS_CLK:R -Pin_1(0)_PAD 32210 SPIM_IntClock:R -Pin_2(0)_PAD 33907 CyBUS_CLK:R -Pin_2(0)_PAD 32381 SPIM_IntClock:R -Pin_3(0)_PAD 33472 CyBUS_CLK:R -Pin_3(0)_PAD 31946 SPIM_IntClock:R -Pin_4(0)_PAD 32133 CyBUS_CLK:R -Pin_4(0)_PAD 30607 SPIM_IntClock:R -Tx_1(0)_PAD 34023 Clock_1:R -m_mosi_pin(0)_PAD 36766 SPIM_IntClock:R -m_sclk_pin(0)_PAD 28375 SPIM_IntClock:R +Pin_1(0)_PAD 32702 CyBUS_CLK:R +Pin_1(0)_PAD 31153 SPIM_IntClock:R +Pin_2(0)_PAD 31990 CyBUS_CLK:R +Pin_2(0)_PAD 30464 SPIM_IntClock:R +Pin_3(0)_PAD 33095 CyBUS_CLK:R +Pin_3(0)_PAD 31569 SPIM_IntClock:R +Pin_4(0)_PAD 31860 CyBUS_CLK:R +Pin_4(0)_PAD 30334 SPIM_IntClock:R +Pin_5(0)_PAD 32580 CyBUS_CLK:R +Pin_5(0)_PAD 31053 SPIM_IntClock:R +Tx_1(0)_PAD 32135 Clock_1:R +m_mosi_pin(0)_PAD 35727 SPIM_IntClock:R +m_sclk_pin(0)_PAD 27466 SPIM_IntClock:R 3.3::Pad to Pad @@ -95,14 +100,14 @@ Port Name (Source) Port Name (Destination) Delay 4.1::Critical Path Report for Clock_1 ************************************* Clock: Clock_1 -Frequency: 43.85 MHz | Target: 0.92 MHz +Frequency: 42.47 MHz | Target: 0.92 MHz ++++ Path 1 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \UART_1:BUART:tx_state_0\/q +Path Begin : \UART_1:BUART:tx_state_1\/q Path End : \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_0 Capture Clock : \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/clock -Path slack : 1060528p +Path slack : 1059785p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -113,43 +118,92 @@ End-of-path required time (ps) 1071813 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 11285 ++ Data path delay 12028 ------------------------------------- ----- -End-of-path arrival time (ps) 11285 +End-of-path arrival time (ps) 12028 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_0\/clock_0 macrocell27 0 0 RISE 1 +\UART_1:BUART:tx_state_1\/clock_0 macrocell33 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout ----------------------------------------------- ------------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_state_0\/q macrocell27 1250 1250 1060528 RISE 1 -\UART_1:BUART:counter_load_not\/main_1 macrocell24 4383 5633 1060528 RISE 1 -\UART_1:BUART:counter_load_not\/q macrocell24 3350 8983 1060528 RISE 1 -\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_0 datapathcell3 2302 11285 1060528 RISE 1 +\UART_1:BUART:tx_state_1\/q macrocell33 1250 1250 1059785 RISE 1 +\UART_1:BUART:counter_load_not\/main_0 macrocell29 5136 6386 1059785 RISE 1 +\UART_1:BUART:counter_load_not\/q macrocell29 3350 9736 1059785 RISE 1 +\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_0 datapathcell5 2292 12028 1059785 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/clock datapathcell3 0 0 RISE 1 +\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/clock datapathcell5 0 0 RISE 1 + + +===================================================================== +4.2::Critical Path Report for CyBUS_CLK +*************************************** +Clock: CyBUS_CLK +Frequency: 43.36 MHz | Target: 24.00 MHz + +++++ Path 1 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \Timer_1:TimerUDB:sT16:timerdp:u0\/z0 +Path End : \Timer_1:TimerUDB:sT16:timerdp:u1\/ci +Capture Clock : \Timer_1:TimerUDB:sT16:timerdp:u1\/clock +Path slack : 18605p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -5090 +------------------------------------------------ ----- +End-of-path required time (ps) 36577 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 17972 +------------------------------------- ----- +End-of-path arrival time (ps) 17972 + +Launch Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u0\/clock datapathcell2 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +-------------------------------------------- ------------- ----- ----- ----- ---- ------ +\Timer_1:TimerUDB:sT16:timerdp:u0\/z0 datapathcell2 2320 2320 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i datapathcell3 0 2320 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb datapathcell3 2960 5280 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_0 datapathcell2 2982 8262 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb datapathcell2 9710 17972 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/ci datapathcell3 0 17972 18605 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/clock datapathcell3 0 0 RISE 1 ===================================================================== -4.2::Critical Path Report for SPIM_IntClock +4.3::Critical Path Report for SPIM_IntClock ******************************************* Clock: SPIM_IntClock -Frequency: 61.38 MHz | Target: 2.00 MHz +Frequency: 52.40 MHz | Target: 2.00 MHz ++++ Path 1 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:sR8:Dp:u0\/f1_blk_stat_comb -Path End : \SPIM:BSPIM:RxStsReg\/status_6 -Capture Clock : \SPIM:BSPIM:RxStsReg\/clock -Path slack : 483708p +Path Begin : \SPIM:BSPIM:BitCounter\/count_2 +Path End : \SPIM:BSPIM:TxStsReg\/status_3 +Capture Clock : \SPIM:BSPIM:TxStsReg\/clock +Path slack : 480914p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -160,29 +214,29 @@ End-of-path required time (ps) 498430 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 14722 ++ Data path delay 17516 ------------------------------------- ----- -End-of-path arrival time (ps) 14722 +End-of-path arrival time (ps) 17516 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ---------------------------------------- ------------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:sR8:Dp:u0\/f1_blk_stat_comb datapathcell1 5280 5280 483708 RISE 1 -\SPIM:BSPIM:rx_status_6\/main_5 macrocell18 3784 9064 483708 RISE 1 -\SPIM:BSPIM:rx_status_6\/q macrocell18 3350 12414 483708 RISE 1 -\SPIM:BSPIM:RxStsReg\/status_6 statusicell1 2308 14722 483708 RISE 1 +pin name model name delay AT slack edge Fanout +--------------------------------- ------------ ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_2 count7cell 2110 2110 480914 RISE 1 +\SPIM:BSPIM:dpcounter_one\/main_2 macrocell11 6477 8587 480914 RISE 1 +\SPIM:BSPIM:dpcounter_one\/q macrocell11 3350 11937 480914 RISE 1 +\SPIM:BSPIM:TxStsReg\/status_3 statusicell2 5578 17516 480914 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:RxStsReg\/clock statusicell1 0 0 RISE 1 +\SPIM:BSPIM:TxStsReg\/clock statusicell2 0 0 RISE 1 @@ -200,10 +254,10 @@ ClockBlock/dclk_glb_0 clockblockcell 0 ++++ Path 1 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:sR8:Dp:u0\/f1_blk_stat_comb -Path End : \SPIM:BSPIM:RxStsReg\/status_6 -Capture Clock : \SPIM:BSPIM:RxStsReg\/clock -Path slack : 483708p +Path Begin : \SPIM:BSPIM:BitCounter\/count_2 +Path End : \SPIM:BSPIM:TxStsReg\/status_3 +Capture Clock : \SPIM:BSPIM:TxStsReg\/clock +Path slack : 480914p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -214,29 +268,29 @@ End-of-path required time (ps) 498430 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 14722 ++ Data path delay 17516 ------------------------------------- ----- -End-of-path arrival time (ps) 14722 +End-of-path arrival time (ps) 17516 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ---------------------------------------- ------------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:sR8:Dp:u0\/f1_blk_stat_comb datapathcell1 5280 5280 483708 RISE 1 -\SPIM:BSPIM:rx_status_6\/main_5 macrocell18 3784 9064 483708 RISE 1 -\SPIM:BSPIM:rx_status_6\/q macrocell18 3350 12414 483708 RISE 1 -\SPIM:BSPIM:RxStsReg\/status_6 statusicell1 2308 14722 483708 RISE 1 +pin name model name delay AT slack edge Fanout +--------------------------------- ------------ ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_2 count7cell 2110 2110 480914 RISE 1 +\SPIM:BSPIM:dpcounter_one\/main_2 macrocell11 6477 8587 480914 RISE 1 +\SPIM:BSPIM:dpcounter_one\/q macrocell11 3350 11937 480914 RISE 1 +\SPIM:BSPIM:TxStsReg\/status_3 statusicell2 5578 17516 480914 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:RxStsReg\/clock statusicell1 0 0 RISE 1 +\SPIM:BSPIM:TxStsReg\/clock statusicell2 0 0 RISE 1 5.2::Critical Path Report for (Clock_1:R vs. Clock_1:R) @@ -244,10 +298,10 @@ ClockBlock/dclk_glb_0 clockblockcell 0 ++++ Path 2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \UART_1:BUART:tx_state_0\/q +Path Begin : \UART_1:BUART:tx_state_1\/q Path End : \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_0 Capture Clock : \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/clock -Path slack : 1060528p +Path slack : 1059785p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -258,29 +312,75 @@ End-of-path required time (ps) 1071813 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 11285 ++ Data path delay 12028 ------------------------------------- ----- -End-of-path arrival time (ps) 11285 +End-of-path arrival time (ps) 12028 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_0\/clock_0 macrocell27 0 0 RISE 1 +\UART_1:BUART:tx_state_1\/clock_0 macrocell33 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout ----------------------------------------------- ------------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_state_0\/q macrocell27 1250 1250 1060528 RISE 1 -\UART_1:BUART:counter_load_not\/main_1 macrocell24 4383 5633 1060528 RISE 1 -\UART_1:BUART:counter_load_not\/q macrocell24 3350 8983 1060528 RISE 1 -\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_0 datapathcell3 2302 11285 1060528 RISE 1 +\UART_1:BUART:tx_state_1\/q macrocell33 1250 1250 1059785 RISE 1 +\UART_1:BUART:counter_load_not\/main_0 macrocell29 5136 6386 1059785 RISE 1 +\UART_1:BUART:counter_load_not\/q macrocell29 3350 9736 1059785 RISE 1 +\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_0 datapathcell5 2292 12028 1059785 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/clock datapathcell3 0 0 RISE 1 +\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/clock datapathcell5 0 0 RISE 1 + + +5.3::Critical Path Report for (CyBUS_CLK:R vs. CyBUS_CLK:R) +*********************************************************** + +++++ Path 3 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \Timer_1:TimerUDB:sT16:timerdp:u0\/z0 +Path End : \Timer_1:TimerUDB:sT16:timerdp:u1\/ci +Capture Clock : \Timer_1:TimerUDB:sT16:timerdp:u1\/clock +Path slack : 18605p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -5090 +------------------------------------------------ ----- +End-of-path required time (ps) 36577 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 17972 +------------------------------------- ----- +End-of-path arrival time (ps) 17972 + +Launch Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u0\/clock datapathcell2 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +-------------------------------------------- ------------- ----- ----- ----- ---- ------ +\Timer_1:TimerUDB:sT16:timerdp:u0\/z0 datapathcell2 2320 2320 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i datapathcell3 0 2320 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb datapathcell3 2960 5280 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_0 datapathcell2 2982 8262 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb datapathcell2 9710 17972 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/ci datapathcell3 0 17972 18605 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/clock datapathcell3 0 0 RISE 1 @@ -294,416 +394,1312 @@ ClockBlock/dclk_glb_1 clockblockcell 0 ++++ Path 1 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:sR8:Dp:u0\/f1_blk_stat_comb -Path End : \SPIM:BSPIM:RxStsReg\/status_6 -Capture Clock : \SPIM:BSPIM:RxStsReg\/clock -Path slack : 483708p +Path Begin : \Timer_1:TimerUDB:sT16:timerdp:u0\/z0 +Path End : \Timer_1:TimerUDB:sT16:timerdp:u1\/ci +Capture Clock : \Timer_1:TimerUDB:sT16:timerdp:u1\/clock +Path slack : 18605p -Capture Clock Arrival Time 0 -+ Clock path delay 0 -+ Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 -- Setup time -1570 --------------------------------------------------------- ------ -End-of-path required time (ps) 498430 +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -5090 +------------------------------------------------ ----- +End-of-path required time (ps) 36577 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 14722 ++ Data path delay 17972 ------------------------------------- ----- -End-of-path arrival time (ps) 14722 +End-of-path arrival time (ps) 17972 Launch Clock Path -pin name model name delay AT edge Fanout ---------------------------------------------------------- -------------- ----- ----- ---- ------ -ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u0\/clock datapathcell2 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ---------------------------------------- ------------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:sR8:Dp:u0\/f1_blk_stat_comb datapathcell1 5280 5280 483708 RISE 1 -\SPIM:BSPIM:rx_status_6\/main_5 macrocell18 3784 9064 483708 RISE 1 -\SPIM:BSPIM:rx_status_6\/q macrocell18 3350 12414 483708 RISE 1 -\SPIM:BSPIM:RxStsReg\/status_6 statusicell1 2308 14722 483708 RISE 1 +pin name model name delay AT slack edge Fanout +-------------------------------------------- ------------- ----- ----- ----- ---- ------ +\Timer_1:TimerUDB:sT16:timerdp:u0\/z0 datapathcell2 2320 2320 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i datapathcell3 0 2320 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb datapathcell3 2960 5280 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_0 datapathcell2 2982 8262 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb datapathcell2 9710 17972 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/ci datapathcell3 0 17972 18605 RISE 1 Capture Clock Path -pin name model name delay AT edge Fanout ---------------------------------------------------------- -------------- ----- ----- ---- ------ -ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:RxStsReg\/clock statusicell1 0 0 RISE 1 +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/clock datapathcell3 0 0 RISE 1 ++++ Path 2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:sR8:Dp:u0\/so_comb -Path End : \SPIM:BSPIM:mosi_hs_reg\/main_3 -Capture Clock : \SPIM:BSPIM:mosi_hs_reg\/clock_0 -Path slack : 484477p +Path Begin : \Timer_1:TimerUDB:sT16:timerdp:u0\/z0 +Path End : \Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_0 +Capture Clock : \Timer_1:TimerUDB:sT16:timerdp:u0\/clock +Path slack : 21885p -Capture Clock Arrival Time 0 -+ Clock path delay 0 -+ Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 -- Setup time -3510 --------------------------------------------------------- ------ -End-of-path required time (ps) 496490 +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -11520 +------------------------------------------------ ------ +End-of-path required time (ps) 30147 -Launch Clock Arrival Time 0 -+ Clock path delay 0 -+ Data path delay 12013 -------------------------------------- ----- -End-of-path arrival time (ps) 12013 +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 8262 +------------------------------------- ---- +End-of-path arrival time (ps) 8262 Launch Clock Path -pin name model name delay AT edge Fanout ---------------------------------------------------------- -------------- ----- ----- ---- ------ -ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u0\/clock datapathcell2 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout -------------------------------- ------------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:sR8:Dp:u0\/so_comb datapathcell1 8300 8300 484477 RISE 1 -\SPIM:BSPIM:mosi_hs_reg\/main_3 macrocell16 3713 12013 484477 RISE 1 +pin name model name delay AT slack edge Fanout +-------------------------------------------- ------------- ----- ----- ----- ---- ------ +\Timer_1:TimerUDB:sT16:timerdp:u0\/z0 datapathcell2 2320 2320 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i datapathcell3 0 2320 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb datapathcell3 2960 5280 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_0 datapathcell2 2982 8262 21885 RISE 1 Capture Clock Path -pin name model name delay AT edge Fanout ---------------------------------------------------------- -------------- ----- ----- ---- ------ -ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_hs_reg\/clock_0 macrocell16 0 0 RISE 1 +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u0\/clock datapathcell2 0 0 RISE 1 ++++ Path 3 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:sR8:Dp:u0\/so_comb -Path End : \SPIM:BSPIM:mosi_pre_reg\/main_3 -Capture Clock : \SPIM:BSPIM:mosi_pre_reg\/clock_0 -Path slack : 485360p +Path Begin : \Timer_1:TimerUDB:sT16:timerdp:u0\/z0 +Path End : \Timer_1:TimerUDB:sT16:timerdp:u1\/cs_addr_0 +Capture Clock : \Timer_1:TimerUDB:sT16:timerdp:u1\/clock +Path slack : 21887p -Capture Clock Arrival Time 0 -+ Clock path delay 0 -+ Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 -- Setup time -3510 --------------------------------------------------------- ------ -End-of-path required time (ps) 496490 +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -11520 +------------------------------------------------ ------ +End-of-path required time (ps) 30147 -Launch Clock Arrival Time 0 -+ Clock path delay 0 -+ Data path delay 11130 -------------------------------------- ----- -End-of-path arrival time (ps) 11130 +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 8259 +------------------------------------- ---- +End-of-path arrival time (ps) 8259 Launch Clock Path -pin name model name delay AT edge Fanout ---------------------------------------------------------- -------------- ----- ----- ---- ------ -ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u0\/clock datapathcell2 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout --------------------------------- ------------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:sR8:Dp:u0\/so_comb datapathcell1 8300 8300 484477 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/main_3 macrocell17 2830 11130 485360 RISE 1 +pin name model name delay AT slack edge Fanout +-------------------------------------------- ------------- ----- ----- ----- ---- ------ +\Timer_1:TimerUDB:sT16:timerdp:u0\/z0 datapathcell2 2320 2320 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i datapathcell3 0 2320 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb datapathcell3 2960 5280 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/cs_addr_0 datapathcell3 2979 8259 21887 RISE 1 Capture Clock Path -pin name model name delay AT edge Fanout ---------------------------------------------------------- -------------- ----- ----- ---- ------ -ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell17 0 0 RISE 1 +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/clock datapathcell3 0 0 RISE 1 ++++ Path 4 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:sR8:Dp:u0\/so_comb -Path End : \SPIM:BSPIM:mosi_from_dp_reg\/main_0 -Capture Clock : \SPIM:BSPIM:mosi_from_dp_reg\/clock_0 -Path slack : 485370p +Path Begin : \Timer_1:TimerUDB:timer_enable\/q +Path End : \Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_1 +Capture Clock : \Timer_1:TimerUDB:sT16:timerdp:u0\/clock +Path slack : 25922p -Capture Clock Arrival Time 0 -+ Clock path delay 0 -+ Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 -- Setup time -3510 --------------------------------------------------------- ------ -End-of-path required time (ps) 496490 +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -11520 +------------------------------------------------ ------ +End-of-path required time (ps) 30147 -Launch Clock Arrival Time 0 -+ Clock path delay 0 -+ Data path delay 11120 -------------------------------------- ----- -End-of-path arrival time (ps) 11120 +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 4224 +------------------------------------- ---- +End-of-path arrival time (ps) 4224 Launch Clock Path -pin name model name delay AT edge Fanout ---------------------------------------------------------- -------------- ----- ----- ---- ------ -ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:timer_enable\/clock_0 macrocell27 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ------------------------------------- ------------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:sR8:Dp:u0\/so_comb datapathcell1 8300 8300 484477 RISE 1 -\SPIM:BSPIM:mosi_from_dp_reg\/main_0 macrocell15 2820 11120 485370 RISE 1 +pin name model name delay AT slack edge Fanout +-------------------------------------------- ------------- ----- ----- ----- ---- ------ +\Timer_1:TimerUDB:timer_enable\/q macrocell27 1250 1250 22642 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_1 datapathcell2 2974 4224 25922 RISE 1 Capture Clock Path -pin name model name delay AT edge Fanout ---------------------------------------------------------- -------------- ----- ----- ---- ------ -ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_from_dp_reg\/clock_0 macrocell15 0 0 RISE 1 +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u0\/clock datapathcell2 0 0 RISE 1 ++++ Path 5 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_2\/q -Path End : \SPIM:BSPIM:TxStsReg\/status_0 -Capture Clock : \SPIM:BSPIM:TxStsReg\/clock -Path slack : 486427p +Path Begin : \Timer_1:TimerUDB:timer_enable\/q +Path End : \Timer_1:TimerUDB:sT16:timerdp:u1\/cs_addr_1 +Capture Clock : \Timer_1:TimerUDB:sT16:timerdp:u1\/clock +Path slack : 26029p -Capture Clock Arrival Time 0 -+ Clock path delay 0 -+ Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 -- Setup time -1570 --------------------------------------------------------- ------ -End-of-path required time (ps) 498430 +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -11520 +------------------------------------------------ ------ +End-of-path required time (ps) 30147 -Launch Clock Arrival Time 0 -+ Clock path delay 0 -+ Data path delay 12003 -------------------------------------- ----- -End-of-path arrival time (ps) 12003 +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 4117 +------------------------------------- ---- +End-of-path arrival time (ps) 4117 Launch Clock Path -pin name model name delay AT edge Fanout ---------------------------------------------------------- -------------- ----- ----- ---- ------ -ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:timer_enable\/clock_0 macrocell27 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout -------------------------------- ------------ ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_2\/q macrocell21 1250 1250 486427 RISE 1 -\SPIM:BSPIM:tx_status_0\/main_0 macrocell22 4486 5736 486427 RISE 1 -\SPIM:BSPIM:tx_status_0\/q macrocell22 3350 9086 486427 RISE 1 -\SPIM:BSPIM:TxStsReg\/status_0 statusicell2 2917 12003 486427 RISE 1 +pin name model name delay AT slack edge Fanout +-------------------------------------------- ------------- ----- ----- ----- ---- ------ +\Timer_1:TimerUDB:timer_enable\/q macrocell27 1250 1250 22642 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/cs_addr_1 datapathcell3 2867 4117 26029 RISE 1 Capture Clock Path -pin name model name delay AT edge Fanout ---------------------------------------------------------- -------------- ----- ----- ---- ------ -ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:TxStsReg\/clock statusicell2 0 0 RISE 1 +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/clock datapathcell3 0 0 RISE 1 ++++ Path 6 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_1 -Path End : \SPIM:BSPIM:TxStsReg\/status_3 -Capture Clock : \SPIM:BSPIM:TxStsReg\/clock -Path slack : 486627p +Path Begin : \Timer_1:TimerUDB:sT16:timerdp:u0\/z0 +Path End : \Timer_1:TimerUDB:nrstSts:stsreg\/status_0 +Capture Clock : \Timer_1:TimerUDB:nrstSts:stsreg\/clock +Path slack : 26330p -Capture Clock Arrival Time 0 -+ Clock path delay 0 -+ Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 -- Setup time -1570 --------------------------------------------------------- ------ -End-of-path required time (ps) 498430 +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -1570 +------------------------------------------------ ----- +End-of-path required time (ps) 40097 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 11803 ++ Data path delay 13767 ------------------------------------- ----- -End-of-path arrival time (ps) 11803 +End-of-path arrival time (ps) 13767 Launch Clock Path -pin name model name delay AT edge Fanout ---------------------------------------------------------- -------------- ----- ----- ---- ------ -ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u0\/clock datapathcell2 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ---------------------------------- ------------ ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_1 count7cell 2110 2110 486627 RISE 1 -\SPIM:BSPIM:dpcounter_one\/main_3 macrocell10 4028 6138 486627 RISE 1 -\SPIM:BSPIM:dpcounter_one\/q macrocell10 3350 9488 486627 RISE 1 -\SPIM:BSPIM:TxStsReg\/status_3 statusicell2 2316 11803 486627 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------------------ ------------- ----- ----- ----- ---- ------ +\Timer_1:TimerUDB:sT16:timerdp:u0\/z0 datapathcell2 2320 2320 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i datapathcell3 0 2320 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb datapathcell3 2960 5280 18605 RISE 1 +\Timer_1:TimerUDB:status_tc\/main_1 macrocell26 2872 8152 26330 RISE 1 +\Timer_1:TimerUDB:status_tc\/q macrocell26 3350 11502 26330 RISE 1 +\Timer_1:TimerUDB:nrstSts:stsreg\/status_0 statusicell3 2265 13767 26330 RISE 1 Capture Clock Path -pin name model name delay AT edge Fanout ---------------------------------------------------------- -------------- ----- ----- ---- ------ -ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:TxStsReg\/clock statusicell2 0 0 RISE 1 +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:nrstSts:stsreg\/clock statusicell3 0 0 RISE 1 ++++ Path 7 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb -Path End : \SPIM:BSPIM:state_1\/main_8 -Capture Clock : \SPIM:BSPIM:state_1\/clock_0 -Path slack : 486838p +Path Begin : \Timer_1:TimerUDB:sT16:timerdp:u0\/z0 +Path End : \Timer_1:TimerUDB:timer_enable\/main_3 +Capture Clock : \Timer_1:TimerUDB:timer_enable\/clock_0 +Path slack : 30005p -Capture Clock Arrival Time 0 -+ Clock path delay 0 -+ Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 -- Setup time -3510 --------------------------------------------------------- ------ -End-of-path required time (ps) 496490 +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -3510 +------------------------------------------------ ----- +End-of-path required time (ps) 38157 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 9652 ++ Data path delay 8152 ------------------------------------- ---- -End-of-path arrival time (ps) 9652 +End-of-path arrival time (ps) 8152 Launch Clock Path -pin name model name delay AT edge Fanout ---------------------------------------------------------- -------------- ----- ----- ---- ------ -ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u0\/clock datapathcell2 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ---------------------------------------- ------------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb datapathcell1 5280 5280 486838 RISE 1 -\SPIM:BSPIM:state_1\/main_8 macrocell20 4372 9652 486838 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------------------ ------------- ----- ----- ----- ---- ------ +\Timer_1:TimerUDB:sT16:timerdp:u0\/z0 datapathcell2 2320 2320 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i datapathcell3 0 2320 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb datapathcell3 2960 5280 18605 RISE 1 +\Timer_1:TimerUDB:timer_enable\/main_3 macrocell27 2872 8152 30005 RISE 1 Capture Clock Path -pin name model name delay AT edge Fanout ---------------------------------------------------------- -------------- ----- ----- ---- ------ -ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:timer_enable\/clock_0 macrocell27 0 0 RISE 1 ++++ Path 8 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_1\/q -Path End : \SPIM:BSPIM:sR8:Dp:u0\/cs_addr_1 -Capture Clock : \SPIM:BSPIM:sR8:Dp:u0\/clock -Path slack : 487379p +Path Begin : \Timer_1:TimerUDB:sT16:timerdp:u0\/z0 +Path End : \Timer_1:TimerUDB:trig_disable\/main_2 +Capture Clock : \Timer_1:TimerUDB:trig_disable\/clock_0 +Path slack : 30005p -Capture Clock Arrival Time 0 -+ Clock path delay 0 -+ Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 -- Setup time -7170 --------------------------------------------------------- ------ -End-of-path required time (ps) 492830 +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -3510 +------------------------------------------------ ----- +End-of-path required time (ps) 38157 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5451 ++ Data path delay 8152 ------------------------------------- ---- -End-of-path arrival time (ps) 5451 +End-of-path arrival time (ps) 8152 Launch Clock Path -pin name model name delay AT edge Fanout ---------------------------------------------------------- -------------- ----- ----- ---- ------ -ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u0\/clock datapathcell2 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout --------------------------------- ------------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_1\/q macrocell20 1250 1250 486723 RISE 1 -\SPIM:BSPIM:sR8:Dp:u0\/cs_addr_1 datapathcell1 4201 5451 487379 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------------------ ------------- ----- ----- ----- ---- ------ +\Timer_1:TimerUDB:sT16:timerdp:u0\/z0 datapathcell2 2320 2320 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i datapathcell3 0 2320 18605 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb datapathcell3 2960 5280 18605 RISE 1 +\Timer_1:TimerUDB:trig_disable\/main_2 macrocell28 2872 8152 30005 RISE 1 Capture Clock Path -pin name model name delay AT edge Fanout ---------------------------------------------------------- -------------- ----- ----- ---- ------ -ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:trig_disable\/clock_0 macrocell28 0 0 RISE 1 ++++ Path 9 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_2\/q -Path End : \SPIM:BSPIM:sR8:Dp:u0\/cs_addr_2 -Capture Clock : \SPIM:BSPIM:sR8:Dp:u0\/clock -Path slack : 487556p +Path Begin : \Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\/control_7 +Path End : \Timer_1:TimerUDB:run_mode\/main_0 +Capture Clock : \Timer_1:TimerUDB:run_mode\/clock_0 +Path slack : 33326p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -3510 +------------------------------------------------ ----- +End-of-path required time (ps) 38157 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 4831 +------------------------------------- ---- +End-of-path arrival time (ps) 4831 + +Launch Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\/busclk controlcell2 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +------------------------------------------------------ ------------ ----- ----- ----- ---- ------ +\Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\/control_7 controlcell2 2580 2580 33326 RISE 1 +\Timer_1:TimerUDB:run_mode\/main_0 macrocell25 2251 4831 33326 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:run_mode\/clock_0 macrocell25 0 0 RISE 1 + + + +++++ Path 10 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\/control_7 +Path End : \Timer_1:TimerUDB:timer_enable\/main_0 +Capture Clock : \Timer_1:TimerUDB:timer_enable\/clock_0 +Path slack : 33326p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -3510 +------------------------------------------------ ----- +End-of-path required time (ps) 38157 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 4831 +------------------------------------- ---- +End-of-path arrival time (ps) 4831 + +Launch Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\/busclk controlcell2 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +------------------------------------------------------ ------------ ----- ----- ----- ---- ------ +\Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\/control_7 controlcell2 2580 2580 33326 RISE 1 +\Timer_1:TimerUDB:timer_enable\/main_0 macrocell27 2251 4831 33326 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:timer_enable\/clock_0 macrocell27 0 0 RISE 1 + + + +++++ Path 11 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \Timer_1:TimerUDB:timer_enable\/q +Path End : \Timer_1:TimerUDB:timer_enable\/main_1 +Capture Clock : \Timer_1:TimerUDB:timer_enable\/clock_0 +Path slack : 33941p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -3510 +------------------------------------------------ ----- +End-of-path required time (ps) 38157 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 4215 +------------------------------------- ---- +End-of-path arrival time (ps) 4215 + +Launch Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:timer_enable\/clock_0 macrocell27 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +-------------------------------------- ----------- ----- ----- ----- ---- ------ +\Timer_1:TimerUDB:timer_enable\/q macrocell27 1250 1250 22642 RISE 1 +\Timer_1:TimerUDB:timer_enable\/main_1 macrocell27 2965 4215 33941 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:timer_enable\/clock_0 macrocell27 0 0 RISE 1 + + + +++++ Path 12 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \Timer_1:TimerUDB:timer_enable\/q +Path End : \Timer_1:TimerUDB:trig_disable\/main_0 +Capture Clock : \Timer_1:TimerUDB:trig_disable\/clock_0 +Path slack : 33941p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -3510 +------------------------------------------------ ----- +End-of-path required time (ps) 38157 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 4215 +------------------------------------- ---- +End-of-path arrival time (ps) 4215 + +Launch Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:timer_enable\/clock_0 macrocell27 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +-------------------------------------- ----------- ----- ----- ----- ---- ------ +\Timer_1:TimerUDB:timer_enable\/q macrocell27 1250 1250 22642 RISE 1 +\Timer_1:TimerUDB:trig_disable\/main_0 macrocell28 2965 4215 33941 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:trig_disable\/clock_0 macrocell28 0 0 RISE 1 + + + +++++ Path 13 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \Timer_1:TimerUDB:trig_disable\/q +Path End : \Timer_1:TimerUDB:timer_enable\/main_4 +Capture Clock : \Timer_1:TimerUDB:timer_enable\/clock_0 +Path slack : 34663p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -3510 +------------------------------------------------ ----- +End-of-path required time (ps) 38157 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 3493 +------------------------------------- ---- +End-of-path arrival time (ps) 3493 + +Launch Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:trig_disable\/clock_0 macrocell28 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +-------------------------------------- ----------- ----- ----- ----- ---- ------ +\Timer_1:TimerUDB:trig_disable\/q macrocell28 1250 1250 34663 RISE 1 +\Timer_1:TimerUDB:timer_enable\/main_4 macrocell27 2243 3493 34663 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:timer_enable\/clock_0 macrocell27 0 0 RISE 1 + + + +++++ Path 14 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \Timer_1:TimerUDB:trig_disable\/q +Path End : \Timer_1:TimerUDB:trig_disable\/main_3 +Capture Clock : \Timer_1:TimerUDB:trig_disable\/clock_0 +Path slack : 34663p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -3510 +------------------------------------------------ ----- +End-of-path required time (ps) 38157 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 3493 +------------------------------------- ---- +End-of-path arrival time (ps) 3493 + +Launch Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:trig_disable\/clock_0 macrocell28 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +-------------------------------------- ----------- ----- ----- ----- ---- ------ +\Timer_1:TimerUDB:trig_disable\/q macrocell28 1250 1250 34663 RISE 1 +\Timer_1:TimerUDB:trig_disable\/main_3 macrocell28 2243 3493 34663 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:trig_disable\/clock_0 macrocell28 0 0 RISE 1 + + + +++++ Path 15 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \Timer_1:TimerUDB:run_mode\/q +Path End : \Timer_1:TimerUDB:timer_enable\/main_2 +Capture Clock : \Timer_1:TimerUDB:timer_enable\/clock_0 +Path slack : 34666p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -3510 +------------------------------------------------ ----- +End-of-path required time (ps) 38157 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 3490 +------------------------------------- ---- +End-of-path arrival time (ps) 3490 + +Launch Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:run_mode\/clock_0 macrocell25 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +-------------------------------------- ----------- ----- ----- ----- ---- ------ +\Timer_1:TimerUDB:run_mode\/q macrocell25 1250 1250 30991 RISE 1 +\Timer_1:TimerUDB:timer_enable\/main_2 macrocell27 2240 3490 34666 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:timer_enable\/clock_0 macrocell27 0 0 RISE 1 + + + +++++ Path 16 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \Timer_1:TimerUDB:run_mode\/q +Path End : \Timer_1:TimerUDB:trig_disable\/main_1 +Capture Clock : \Timer_1:TimerUDB:trig_disable\/clock_0 +Path slack : 34666p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -3510 +------------------------------------------------ ----- +End-of-path required time (ps) 38157 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 3490 +------------------------------------- ---- +End-of-path arrival time (ps) 3490 + +Launch Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:run_mode\/clock_0 macrocell25 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +-------------------------------------- ----------- ----- ----- ----- ---- ------ +\Timer_1:TimerUDB:run_mode\/q macrocell25 1250 1250 30991 RISE 1 +\Timer_1:TimerUDB:trig_disable\/main_1 macrocell28 2240 3490 34666 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:trig_disable\/clock_0 macrocell28 0 0 RISE 1 + + + +++++ Path 17 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : ClockBlock_1k__SYNC/out +Path End : \Timer_1:TimerUDB:nrstSts:stsreg\/clk_en +Capture Clock : \Timer_1:TimerUDB:nrstSts:stsreg\/clock +Path slack : 35381p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -2100 +------------------------------------------------ ----- +End-of-path required time (ps) 39567 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 4185 +------------------------------------- ---- +End-of-path arrival time (ps) 4185 + +Launch Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +ClockBlock_1k__SYNC/clock synccell 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +---------------------------------------- ------------ ----- ----- ----- ---- ------ +ClockBlock_1k__SYNC/out synccell 1480 1480 35381 RISE 1 +\Timer_1:TimerUDB:nrstSts:stsreg\/clk_en statusicell3 2705 4185 35381 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:nrstSts:stsreg\/clock statusicell3 0 0 RISE 1 + + + +++++ Path 18 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : ClockBlock_1k__SYNC/out +Path End : \Timer_1:TimerUDB:run_mode\/clk_en +Capture Clock : \Timer_1:TimerUDB:run_mode\/clock_0 +Path slack : 35381p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -2100 +------------------------------------------------ ----- +End-of-path required time (ps) 39567 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 4185 +------------------------------------- ---- +End-of-path arrival time (ps) 4185 + +Launch Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +ClockBlock_1k__SYNC/clock synccell 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +---------------------------------- ----------- ----- ----- ----- ---- ------ +ClockBlock_1k__SYNC/out synccell 1480 1480 35381 RISE 1 +\Timer_1:TimerUDB:run_mode\/clk_en macrocell25 2705 4185 35381 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:run_mode\/clock_0 macrocell25 0 0 RISE 1 + + + +++++ Path 19 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : ClockBlock_1k__SYNC/out +Path End : \Timer_1:TimerUDB:sT16:timerdp:u0\/clk_en +Capture Clock : \Timer_1:TimerUDB:sT16:timerdp:u0\/clock +Path slack : 35381p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -2100 +------------------------------------------------ ----- +End-of-path required time (ps) 39567 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 4185 +------------------------------------- ---- +End-of-path arrival time (ps) 4185 + +Launch Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +ClockBlock_1k__SYNC/clock synccell 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +----------------------------------------- ------------- ----- ----- ----- ---- ------ +ClockBlock_1k__SYNC/out synccell 1480 1480 35381 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u0\/clk_en datapathcell2 2705 4185 35381 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u0\/clock datapathcell2 0 0 RISE 1 + + + +++++ Path 20 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : ClockBlock_1k__SYNC/out +Path End : \Timer_1:TimerUDB:timer_enable\/clk_en +Capture Clock : \Timer_1:TimerUDB:timer_enable\/clock_0 +Path slack : 35381p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -2100 +------------------------------------------------ ----- +End-of-path required time (ps) 39567 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 4185 +------------------------------------- ---- +End-of-path arrival time (ps) 4185 + +Launch Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +ClockBlock_1k__SYNC/clock synccell 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +-------------------------------------- ----------- ----- ----- ----- ---- ------ +ClockBlock_1k__SYNC/out synccell 1480 1480 35381 RISE 1 +\Timer_1:TimerUDB:timer_enable\/clk_en macrocell27 2705 4185 35381 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:timer_enable\/clock_0 macrocell27 0 0 RISE 1 + + + +++++ Path 21 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : ClockBlock_1k__SYNC/out +Path End : \Timer_1:TimerUDB:trig_disable\/clk_en +Capture Clock : \Timer_1:TimerUDB:trig_disable\/clock_0 +Path slack : 35381p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -2100 +------------------------------------------------ ----- +End-of-path required time (ps) 39567 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 4185 +------------------------------------- ---- +End-of-path arrival time (ps) 4185 + +Launch Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +ClockBlock_1k__SYNC/clock synccell 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +-------------------------------------- ----------- ----- ----- ----- ---- ------ +ClockBlock_1k__SYNC/out synccell 1480 1480 35381 RISE 1 +\Timer_1:TimerUDB:trig_disable\/clk_en macrocell28 2705 4185 35381 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:trig_disable\/clock_0 macrocell28 0 0 RISE 1 + + + +++++ Path 22 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : ClockBlock_1k__SYNC/out +Path End : \Timer_1:TimerUDB:sT16:timerdp:u1\/clk_en +Capture Clock : \Timer_1:TimerUDB:sT16:timerdp:u1\/clock +Path slack : 35404p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (CyBUS_CLK:R#1 vs. CyBUS_CLK:R#2) 41667 +- Setup time -2100 +------------------------------------------------ ----- +End-of-path required time (ps) 39567 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 4162 +------------------------------------- ---- +End-of-path arrival time (ps) 4162 + +Launch Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +ClockBlock_1k__SYNC/clock synccell 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +----------------------------------------- ------------- ----- ----- ----- ---- ------ +ClockBlock_1k__SYNC/out synccell 1480 1480 35381 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/clk_en datapathcell3 2682 4162 35404 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +---------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/clk_bus_glb clockblockcell 0 0 RISE 1 +\Timer_1:TimerUDB:sT16:timerdp:u1\/clock datapathcell3 0 0 RISE 1 + + + +++++ Path 23 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \SPIM:BSPIM:BitCounter\/count_2 +Path End : \SPIM:BSPIM:TxStsReg\/status_3 +Capture Clock : \SPIM:BSPIM:TxStsReg\/clock +Path slack : 480914p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 +- Setup time -1570 +-------------------------------------------------------- ------ +End-of-path required time (ps) 498430 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 17516 +------------------------------------- ----- +End-of-path arrival time (ps) 17516 + +Launch Clock Path +pin name model name delay AT edge Fanout +--------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +--------------------------------- ------------ ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_2 count7cell 2110 2110 480914 RISE 1 +\SPIM:BSPIM:dpcounter_one\/main_2 macrocell11 6477 8587 480914 RISE 1 +\SPIM:BSPIM:dpcounter_one\/q macrocell11 3350 11937 480914 RISE 1 +\SPIM:BSPIM:TxStsReg\/status_3 statusicell2 5578 17516 480914 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +--------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 +\SPIM:BSPIM:TxStsReg\/clock statusicell2 0 0 RISE 1 + + + +++++ Path 24 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \SPIM:BSPIM:state_1\/q +Path End : \SPIM:BSPIM:TxStsReg\/status_0 +Capture Clock : \SPIM:BSPIM:TxStsReg\/clock +Path slack : 482386p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 +- Setup time -1570 +-------------------------------------------------------- ------ +End-of-path required time (ps) 498430 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 16044 +------------------------------------- ----- +End-of-path arrival time (ps) 16044 + +Launch Clock Path +pin name model name delay AT edge Fanout +--------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +------------------------------- ------------ ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_1\/q macrocell21 1250 1250 482386 RISE 1 +\SPIM:BSPIM:tx_status_0\/main_1 macrocell23 8507 9757 482386 RISE 1 +\SPIM:BSPIM:tx_status_0\/q macrocell23 3350 13107 482386 RISE 1 +\SPIM:BSPIM:TxStsReg\/status_0 statusicell2 2937 16044 482386 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +--------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 +\SPIM:BSPIM:TxStsReg\/clock statusicell2 0 0 RISE 1 + + + +++++ Path 25 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \SPIM:BSPIM:state_1\/q +Path End : \SPIM:BSPIM:sR8:Dp:u0\/cs_addr_1 +Capture Clock : \SPIM:BSPIM:sR8:Dp:u0\/clock +Path slack : 482507p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 +- Setup time -7170 +-------------------------------------------------------- ------ +End-of-path required time (ps) 492830 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 10323 +------------------------------------- ----- +End-of-path arrival time (ps) 10323 + +Launch Clock Path +pin name model name delay AT edge Fanout +--------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +-------------------------------- ------------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_1\/q macrocell21 1250 1250 482386 RISE 1 +\SPIM:BSPIM:sR8:Dp:u0\/cs_addr_1 datapathcell1 9073 10323 482507 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +--------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 +\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 + + + +++++ Path 26 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \SPIM:BSPIM:sR8:Dp:u0\/f1_blk_stat_comb +Path End : \SPIM:BSPIM:RxStsReg\/status_6 +Capture Clock : \SPIM:BSPIM:RxStsReg\/clock +Path slack : 483626p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 +- Setup time -1570 +-------------------------------------------------------- ------ +End-of-path required time (ps) 498430 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 14804 +------------------------------------- ----- +End-of-path arrival time (ps) 14804 + +Launch Clock Path +pin name model name delay AT edge Fanout +--------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 +\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +--------------------------------------- ------------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:sR8:Dp:u0\/f1_blk_stat_comb datapathcell1 5280 5280 483626 RISE 1 +\SPIM:BSPIM:rx_status_6\/main_5 macrocell19 3241 8521 483626 RISE 1 +\SPIM:BSPIM:rx_status_6\/q macrocell19 3350 11871 483626 RISE 1 +\SPIM:BSPIM:RxStsReg\/status_6 statusicell1 2933 14804 483626 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +--------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 +\SPIM:BSPIM:RxStsReg\/clock statusicell1 0 0 RISE 1 + + + +++++ Path 27 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \SPIM:BSPIM:state_2\/q +Path End : \SPIM:BSPIM:mosi_hs_reg\/main_0 +Capture Clock : \SPIM:BSPIM:mosi_hs_reg\/clock_0 +Path slack : 484163p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 +- Setup time -3510 +-------------------------------------------------------- ------ +End-of-path required time (ps) 496490 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 12327 +------------------------------------- ----- +End-of-path arrival time (ps) 12327 + +Launch Clock Path +pin name model name delay AT edge Fanout +--------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_2\/q macrocell22 1250 1250 484163 RISE 1 +\SPIM:BSPIM:mosi_hs_reg\/main_0 macrocell17 11077 12327 484163 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +--------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 +\SPIM:BSPIM:mosi_hs_reg\/clock_0 macrocell17 0 0 RISE 1 + + + +++++ Path 28 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \SPIM:BSPIM:sR8:Dp:u0\/so_comb +Path End : \SPIM:BSPIM:mosi_hs_reg\/main_3 +Capture Clock : \SPIM:BSPIM:mosi_hs_reg\/clock_0 +Path slack : 484278p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 +- Setup time -3510 +-------------------------------------------------------- ------ +End-of-path required time (ps) 496490 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 12212 +------------------------------------- ----- +End-of-path arrival time (ps) 12212 + +Launch Clock Path +pin name model name delay AT edge Fanout +--------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 +\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +------------------------------- ------------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:sR8:Dp:u0\/so_comb datapathcell1 8300 8300 484278 RISE 1 +\SPIM:BSPIM:mosi_hs_reg\/main_3 macrocell17 3912 12212 484278 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +--------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 +\SPIM:BSPIM:mosi_hs_reg\/clock_0 macrocell17 0 0 RISE 1 + + + +++++ Path 29 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \SPIM:BSPIM:state_2\/q +Path End : \SPIM:BSPIM:sR8:Dp:u0\/cs_addr_2 +Capture Clock : \SPIM:BSPIM:sR8:Dp:u0\/clock +Path slack : 484556p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 +- Setup time -7170 +-------------------------------------------------------- ------ +End-of-path required time (ps) 492830 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 8274 +------------------------------------- ---- +End-of-path arrival time (ps) 8274 + +Launch Clock Path +pin name model name delay AT edge Fanout +--------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +-------------------------------- ------------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_2\/q macrocell22 1250 1250 484163 RISE 1 +\SPIM:BSPIM:sR8:Dp:u0\/cs_addr_2 datapathcell1 7024 8274 484556 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +--------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 +\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 + + + +++++ Path 30 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \SPIM:BSPIM:sR8:Dp:u0\/so_comb +Path End : \SPIM:BSPIM:mosi_pre_reg\/main_3 +Capture Clock : \SPIM:BSPIM:mosi_pre_reg\/clock_0 +Path slack : 485037p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 +- Setup time -3510 +-------------------------------------------------------- ------ +End-of-path required time (ps) 496490 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 11453 +------------------------------------- ----- +End-of-path arrival time (ps) 11453 + +Launch Clock Path +pin name model name delay AT edge Fanout +--------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 +\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +-------------------------------- ------------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:sR8:Dp:u0\/so_comb datapathcell1 8300 8300 484278 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/main_3 macrocell18 3153 11453 485037 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +--------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell18 0 0 RISE 1 + + + +++++ Path 31 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \SPIM:BSPIM:sR8:Dp:u0\/so_comb +Path End : \SPIM:BSPIM:mosi_from_dp_reg\/main_0 +Capture Clock : \SPIM:BSPIM:mosi_from_dp_reg\/clock_0 +Path slack : 485050p Capture Clock Arrival Time 0 + Clock path delay 0 + Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 -- Setup time -7170 +- Setup time -3510 -------------------------------------------------------- ------ -End-of-path required time (ps) 492830 +End-of-path required time (ps) 496490 -Launch Clock Arrival Time 0 -+ Clock path delay 0 -+ Data path delay 5274 -------------------------------------- ---- -End-of-path arrival time (ps) 5274 +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 11440 +------------------------------------- ----- +End-of-path arrival time (ps) 11440 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout --------------------------------- ------------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_2\/q macrocell21 1250 1250 486427 RISE 1 -\SPIM:BSPIM:sR8:Dp:u0\/cs_addr_2 datapathcell1 4024 5274 487556 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------------ ------------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:sR8:Dp:u0\/so_comb datapathcell1 8300 8300 484278 RISE 1 +\SPIM:BSPIM:mosi_from_dp_reg\/main_0 macrocell16 3140 11440 485050 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 +\SPIM:BSPIM:mosi_from_dp_reg\/clock_0 macrocell16 0 0 RISE 1 -++++ Path 10 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 32 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_0\/q -Path End : \SPIM:BSPIM:sR8:Dp:u0\/cs_addr_0 -Capture Clock : \SPIM:BSPIM:sR8:Dp:u0\/clock -Path slack : 488004p +Path Begin : \SPIM:BSPIM:state_2\/q +Path End : \SPIM:BSPIM:mosi_pre_reg\/main_0 +Capture Clock : \SPIM:BSPIM:mosi_pre_reg\/clock_0 +Path slack : 485083p Capture Clock Arrival Time 0 + Clock path delay 0 + Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 -- Setup time -7170 +- Setup time -3510 -------------------------------------------------------- ------ -End-of-path required time (ps) 492830 +End-of-path required time (ps) 496490 -Launch Clock Arrival Time 0 -+ Clock path delay 0 -+ Data path delay 4826 -------------------------------------- ---- -End-of-path arrival time (ps) 4826 +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 11407 +------------------------------------- ----- +End-of-path arrival time (ps) 11407 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_0\/clock_0 macrocell19 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout --------------------------------- ------------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_0\/q macrocell19 1250 1250 487170 RISE 1 -\SPIM:BSPIM:sR8:Dp:u0\/cs_addr_0 datapathcell1 3576 4826 488004 RISE 1 +pin name model name delay AT slack edge Fanout +-------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_2\/q macrocell22 1250 1250 484163 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/main_0 macrocell18 10157 11407 485083 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell18 0 0 RISE 1 -++++ Path 11 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 33 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb -Path End : \SPIM:BSPIM:is_spi_done\/main_8 -Capture Clock : \SPIM:BSPIM:is_spi_done\/clock_0 -Path slack : 488572p +Path End : \SPIM:BSPIM:state_1\/main_8 +Capture Clock : \SPIM:BSPIM:state_1\/clock_0 +Path slack : 485279p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -712,11 +1708,11 @@ Capture Clock Arrival Time 0 -------------------------------------------------------- ------ End-of-path required time (ps) 496490 -Launch Clock Arrival Time 0 -+ Clock path delay 0 -+ Data path delay 7918 -------------------------------------- ---- -End-of-path arrival time (ps) 7918 +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 11211 +------------------------------------- ----- +End-of-path arrival time (ps) 11211 Launch Clock Path pin name model name delay AT edge Fanout @@ -727,23 +1723,23 @@ ClockBlock/dclk_glb_0 clockblockcell 0 Data path pin name model name delay AT slack edge Fanout --------------------------------------- ------------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb datapathcell1 5280 5280 486838 RISE 1 -\SPIM:BSPIM:is_spi_done\/main_8 macrocell11 2638 7918 488572 RISE 1 +\SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb datapathcell1 5280 5280 485279 RISE 1 +\SPIM:BSPIM:state_1\/main_8 macrocell21 5931 11211 485279 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:is_spi_done\/clock_0 macrocell11 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 -++++ Path 12 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 34 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb -Path End : \SPIM:BSPIM:state_0\/main_3 -Capture Clock : \SPIM:BSPIM:state_0\/clock_0 -Path slack : 488572p +Path Begin : \SPIM:BSPIM:state_1\/q +Path End : \SPIM:BSPIM:mosi_hs_reg\/main_1 +Capture Clock : \SPIM:BSPIM:mosi_hs_reg\/clock_0 +Path slack : 485377p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -752,38 +1748,38 @@ Capture Clock Arrival Time 0 -------------------------------------------------------- ------ End-of-path required time (ps) 496490 -Launch Clock Arrival Time 0 -+ Clock path delay 0 -+ Data path delay 7918 -------------------------------------- ---- -End-of-path arrival time (ps) 7918 +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 11113 +------------------------------------- ----- +End-of-path arrival time (ps) 11113 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ---------------------------------------- ------------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb datapathcell1 5280 5280 486838 RISE 1 -\SPIM:BSPIM:state_0\/main_3 macrocell19 2638 7918 488572 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_1\/q macrocell21 1250 1250 482386 RISE 1 +\SPIM:BSPIM:mosi_hs_reg\/main_1 macrocell17 9863 11113 485377 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_0\/clock_0 macrocell19 0 0 RISE 1 +\SPIM:BSPIM:mosi_hs_reg\/clock_0 macrocell17 0 0 RISE 1 -++++ Path 13 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 35 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb -Path End : \SPIM:BSPIM:state_2\/main_8 -Capture Clock : \SPIM:BSPIM:state_2\/clock_0 -Path slack : 488572p +Path Begin : \SPIM:BSPIM:state_2\/q +Path End : \SPIM:BSPIM:ld_ident\/main_0 +Capture Clock : \SPIM:BSPIM:ld_ident\/clock_0 +Path slack : 485558p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -792,38 +1788,38 @@ Capture Clock Arrival Time 0 -------------------------------------------------------- ------ End-of-path required time (ps) 496490 -Launch Clock Arrival Time 0 -+ Clock path delay 0 -+ Data path delay 7918 -------------------------------------- ---- -End-of-path arrival time (ps) 7918 +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 10932 +------------------------------------- ----- +End-of-path arrival time (ps) 10932 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ---------------------------------------- ------------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb datapathcell1 5280 5280 486838 RISE 1 -\SPIM:BSPIM:state_2\/main_8 macrocell21 2638 7918 488572 RISE 1 +pin name model name delay AT slack edge Fanout +---------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_2\/q macrocell22 1250 1250 484163 RISE 1 +\SPIM:BSPIM:ld_ident\/main_0 macrocell13 9682 10932 485558 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:ld_ident\/clock_0 macrocell13 0 0 RISE 1 -++++ Path 14 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 36 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \SPIM:BSPIM:state_2\/q -Path End : Net_479/main_1 -Capture Clock : Net_479/clock_0 -Path slack : 489416p +Path End : \SPIM:BSPIM:load_cond\/main_0 +Capture Clock : \SPIM:BSPIM:load_cond\/clock_0 +Path slack : 485558p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -832,38 +1828,38 @@ Capture Clock Arrival Time 0 -------------------------------------------------------- ------ End-of-path required time (ps) 496490 -Launch Clock Arrival Time 0 -+ Clock path delay 0 -+ Data path delay 7074 -------------------------------------- ---- -End-of-path arrival time (ps) 7074 +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 10932 +------------------------------------- ----- +End-of-path arrival time (ps) 10932 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ----------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_2\/q macrocell21 1250 1250 486427 RISE 1 -Net_479/main_1 macrocell8 5824 7074 489416 RISE 1 +pin name model name delay AT slack edge Fanout +----------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_2\/q macrocell22 1250 1250 484163 RISE 1 +\SPIM:BSPIM:load_cond\/main_0 macrocell14 9682 10932 485558 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -Net_479/clock_0 macrocell8 0 0 RISE 1 +\SPIM:BSPIM:load_cond\/clock_0 macrocell14 0 0 RISE 1 -++++ Path 15 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 37 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \SPIM:BSPIM:state_2\/q -Path End : \SPIM:BSPIM:load_cond\/main_0 -Capture Clock : \SPIM:BSPIM:load_cond\/clock_0 -Path slack : 489416p +Path End : \SPIM:BSPIM:cnt_enable\/main_0 +Capture Clock : \SPIM:BSPIM:cnt_enable\/clock_0 +Path slack : 485571p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -872,38 +1868,38 @@ Capture Clock Arrival Time 0 -------------------------------------------------------- ------ End-of-path required time (ps) 496490 -Launch Clock Arrival Time 0 -+ Clock path delay 0 -+ Data path delay 7074 -------------------------------------- ---- -End-of-path arrival time (ps) 7074 +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 10919 +------------------------------------- ----- +End-of-path arrival time (ps) 10919 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ------------------------------ ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_2\/q macrocell21 1250 1250 486427 RISE 1 -\SPIM:BSPIM:load_cond\/main_0 macrocell13 5824 7074 489416 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------ ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_2\/q macrocell22 1250 1250 484163 RISE 1 +\SPIM:BSPIM:cnt_enable\/main_0 macrocell10 9669 10919 485571 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:load_cond\/clock_0 macrocell13 0 0 RISE 1 +\SPIM:BSPIM:cnt_enable\/clock_0 macrocell10 0 0 RISE 1 -++++ Path 16 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 38 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:load_cond\/q -Path End : \SPIM:BSPIM:load_cond\/main_8 -Capture Clock : \SPIM:BSPIM:load_cond\/clock_0 -Path slack : 489718p +Path Begin : \SPIM:BSPIM:state_2\/q +Path End : \SPIM:BSPIM:state_1\/main_0 +Capture Clock : \SPIM:BSPIM:state_1\/clock_0 +Path slack : 485571p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -912,38 +1908,38 @@ Capture Clock Arrival Time 0 -------------------------------------------------------- ------ End-of-path required time (ps) 496490 -Launch Clock Arrival Time 0 -+ Clock path delay 0 -+ Data path delay 6772 -------------------------------------- ---- -End-of-path arrival time (ps) 6772 +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 10919 +------------------------------------- ----- +End-of-path arrival time (ps) 10919 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:load_cond\/clock_0 macrocell13 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ------------------------------ ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:load_cond\/q macrocell13 1250 1250 489718 RISE 1 -\SPIM:BSPIM:load_cond\/main_8 macrocell13 5522 6772 489718 RISE 1 +pin name model name delay AT slack edge Fanout +--------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_2\/q macrocell22 1250 1250 484163 RISE 1 +\SPIM:BSPIM:state_1\/main_0 macrocell21 9669 10919 485571 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:load_cond\/clock_0 macrocell13 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 -++++ Path 17 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 39 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \SPIM:BSPIM:state_1\/q -Path End : \SPIM:BSPIM:mosi_hs_reg\/main_1 -Capture Clock : \SPIM:BSPIM:mosi_hs_reg\/clock_0 -Path slack : 490127p +Path End : \SPIM:BSPIM:mosi_pre_reg\/main_1 +Capture Clock : \SPIM:BSPIM:mosi_pre_reg\/clock_0 +Path slack : 486156p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -952,38 +1948,38 @@ Capture Clock Arrival Time 0 -------------------------------------------------------- ------ End-of-path required time (ps) 496490 -Launch Clock Arrival Time 0 -+ Clock path delay 0 -+ Data path delay 6363 -------------------------------------- ---- -End-of-path arrival time (ps) 6363 +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 10334 +------------------------------------- ----- +End-of-path arrival time (ps) 10334 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_1\/q macrocell20 1250 1250 486723 RISE 1 -\SPIM:BSPIM:mosi_hs_reg\/main_1 macrocell16 5113 6363 490127 RISE 1 +pin name model name delay AT slack edge Fanout +-------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_1\/q macrocell21 1250 1250 482386 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/main_1 macrocell18 9084 10334 486156 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_hs_reg\/clock_0 macrocell16 0 0 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell18 0 0 RISE 1 -++++ Path 18 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 40 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_1 -Path End : \SPIM:BSPIM:cnt_enable\/main_6 -Capture Clock : \SPIM:BSPIM:cnt_enable\/clock_0 -Path slack : 490337p +Path Begin : \SPIM:BSPIM:state_1\/q +Path End : \SPIM:BSPIM:is_spi_done\/main_1 +Capture Clock : \SPIM:BSPIM:is_spi_done\/clock_0 +Path slack : 486733p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -994,36 +1990,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 6153 ++ Data path delay 9757 ------------------------------------- ---- -End-of-path arrival time (ps) 6153 +End-of-path arrival time (ps) 9757 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_1 count7cell 2110 2110 486627 RISE 1 -\SPIM:BSPIM:cnt_enable\/main_6 macrocell9 4043 6153 490337 RISE 1 +\SPIM:BSPIM:state_1\/q macrocell21 1250 1250 482386 RISE 1 +\SPIM:BSPIM:is_spi_done\/main_1 macrocell12 8507 9757 486733 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:cnt_enable\/clock_0 macrocell9 0 0 RISE 1 +\SPIM:BSPIM:is_spi_done\/clock_0 macrocell12 0 0 RISE 1 -++++ Path 19 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 41 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_1 -Path End : \SPIM:BSPIM:state_1\/main_6 -Capture Clock : \SPIM:BSPIM:state_1\/clock_0 -Path slack : 490337p +Path Begin : \SPIM:BSPIM:state_1\/q +Path End : \SPIM:BSPIM:state_0\/main_1 +Capture Clock : \SPIM:BSPIM:state_0\/clock_0 +Path slack : 486733p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1034,36 +2030,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 6153 ++ Data path delay 9757 ------------------------------------- ---- -End-of-path arrival time (ps) 6153 +End-of-path arrival time (ps) 9757 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_1 count7cell 2110 2110 486627 RISE 1 -\SPIM:BSPIM:state_1\/main_6 macrocell20 4043 6153 490337 RISE 1 +pin name model name delay AT slack edge Fanout +--------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_1\/q macrocell21 1250 1250 482386 RISE 1 +\SPIM:BSPIM:state_0\/main_1 macrocell20 8507 9757 486733 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +\SPIM:BSPIM:state_0\/clock_0 macrocell20 0 0 RISE 1 -++++ Path 20 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 42 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_1 -Path End : \SPIM:BSPIM:load_cond\/main_6 -Capture Clock : \SPIM:BSPIM:load_cond\/clock_0 -Path slack : 490352p +Path Begin : \SPIM:BSPIM:state_1\/q +Path End : \SPIM:BSPIM:state_2\/main_1 +Capture Clock : \SPIM:BSPIM:state_2\/clock_0 +Path slack : 486733p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1074,36 +2070,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 6138 ++ Data path delay 9757 ------------------------------------- ---- -End-of-path arrival time (ps) 6138 +End-of-path arrival time (ps) 9757 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_1 count7cell 2110 2110 486627 RISE 1 -\SPIM:BSPIM:load_cond\/main_6 macrocell13 4028 6138 490352 RISE 1 +pin name model name delay AT slack edge Fanout +--------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_1\/q macrocell21 1250 1250 482386 RISE 1 +\SPIM:BSPIM:state_2\/main_1 macrocell22 8507 9757 486733 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:load_cond\/clock_0 macrocell13 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 -++++ Path 21 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 43 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_1 -Path End : \SPIM:BSPIM:load_rx_data\/main_3 -Capture Clock : \SPIM:BSPIM:load_rx_data\/clock_0 -Path slack : 490352p +Path Begin : \SPIM:BSPIM:BitCounter\/count_2 +Path End : \SPIM:BSPIM:cnt_enable\/main_5 +Capture Clock : \SPIM:BSPIM:cnt_enable\/clock_0 +Path slack : 487352p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1114,9 +2110,9 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 6138 ++ Data path delay 9138 ------------------------------------- ---- -End-of-path arrival time (ps) 6138 +End-of-path arrival time (ps) 9138 Launch Clock Path pin name model name delay AT edge Fanout @@ -1125,25 +2121,25 @@ ClockBlock/dclk_glb_0 clockblockcell 0 \SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout --------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_1 count7cell 2110 2110 486627 RISE 1 -\SPIM:BSPIM:load_rx_data\/main_3 macrocell14 4028 6138 490352 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_2 count7cell 2110 2110 480914 RISE 1 +\SPIM:BSPIM:cnt_enable\/main_5 macrocell10 7028 9138 487352 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:load_rx_data\/clock_0 macrocell14 0 0 RISE 1 +\SPIM:BSPIM:cnt_enable\/clock_0 macrocell10 0 0 RISE 1 -++++ Path 22 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 44 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_2\/q -Path End : \SPIM:BSPIM:cnt_enable\/main_0 -Capture Clock : \SPIM:BSPIM:cnt_enable\/clock_0 -Path slack : 490517p +Path Begin : \SPIM:BSPIM:BitCounter\/count_2 +Path End : \SPIM:BSPIM:state_1\/main_5 +Capture Clock : \SPIM:BSPIM:state_1\/clock_0 +Path slack : 487352p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1154,76 +2150,76 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5973 ++ Data path delay 9138 ------------------------------------- ---- -End-of-path arrival time (ps) 5973 +End-of-path arrival time (ps) 9138 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_2\/q macrocell21 1250 1250 486427 RISE 1 -\SPIM:BSPIM:cnt_enable\/main_0 macrocell9 4723 5973 490517 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_2 count7cell 2110 2110 480914 RISE 1 +\SPIM:BSPIM:state_1\/main_5 macrocell21 7028 9138 487352 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:cnt_enable\/clock_0 macrocell9 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 -++++ Path 23 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 45 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_2\/q -Path End : \SPIM:BSPIM:state_1\/main_0 -Capture Clock : \SPIM:BSPIM:state_1\/clock_0 -Path slack : 490517p +Path Begin : \SPIM:BSPIM:state_0\/q +Path End : \SPIM:BSPIM:sR8:Dp:u0\/cs_addr_0 +Capture Clock : \SPIM:BSPIM:sR8:Dp:u0\/clock +Path slack : 487379p Capture Clock Arrival Time 0 + Clock path delay 0 + Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 -- Setup time -3510 +- Setup time -7170 -------------------------------------------------------- ------ -End-of-path required time (ps) 496490 +End-of-path required time (ps) 492830 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5973 ++ Data path delay 5451 ------------------------------------- ---- -End-of-path arrival time (ps) 5973 +End-of-path arrival time (ps) 5451 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:state_0\/clock_0 macrocell20 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ---------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_2\/q macrocell21 1250 1250 486427 RISE 1 -\SPIM:BSPIM:state_1\/main_0 macrocell20 4723 5973 490517 RISE 1 +pin name model name delay AT slack edge Fanout +-------------------------------- ------------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_0\/q macrocell20 1250 1250 486610 RISE 1 +\SPIM:BSPIM:sR8:Dp:u0\/cs_addr_0 datapathcell1 4201 5451 487379 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 -++++ Path 24 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 46 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_2\/q -Path End : \SPIM:BSPIM:mosi_hs_reg\/main_0 -Capture Clock : \SPIM:BSPIM:mosi_hs_reg\/clock_0 -Path slack : 490524p +Path Begin : \SPIM:BSPIM:BitCounter\/count_2 +Path End : \SPIM:BSPIM:load_cond\/main_5 +Capture Clock : \SPIM:BSPIM:load_cond\/clock_0 +Path slack : 487903p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1234,36 +2230,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5966 ++ Data path delay 8587 ------------------------------------- ---- -End-of-path arrival time (ps) 5966 +End-of-path arrival time (ps) 8587 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_2\/q macrocell21 1250 1250 486427 RISE 1 -\SPIM:BSPIM:mosi_hs_reg\/main_0 macrocell16 4716 5966 490524 RISE 1 +\SPIM:BSPIM:BitCounter\/count_2 count7cell 2110 2110 480914 RISE 1 +\SPIM:BSPIM:load_cond\/main_5 macrocell14 6477 8587 487903 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_hs_reg\/clock_0 macrocell16 0 0 RISE 1 - +\SPIM:BSPIM:load_cond\/clock_0 macrocell14 0 0 RISE 1 -++++ Path 25 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_2\/q -Path End : Net_439/main_0 -Capture Clock : Net_439/clock_0 -Path slack : 490539p +++++ Path 47 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \SPIM:BSPIM:BitCounter\/count_2 +Path End : \SPIM:BSPIM:load_rx_data\/main_2 +Capture Clock : \SPIM:BSPIM:load_rx_data\/clock_0 +Path slack : 487903p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1274,36 +2270,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5951 ++ Data path delay 8587 ------------------------------------- ---- -End-of-path arrival time (ps) 5951 +End-of-path arrival time (ps) 8587 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ----------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_2\/q macrocell21 1250 1250 486427 RISE 1 -Net_439/main_0 macrocell7 4701 5951 490539 RISE 1 +pin name model name delay AT slack edge Fanout +-------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_2 count7cell 2110 2110 480914 RISE 1 +\SPIM:BSPIM:load_rx_data\/main_2 macrocell15 6477 8587 487903 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -Net_439/clock_0 macrocell7 0 0 RISE 1 +\SPIM:BSPIM:load_rx_data\/clock_0 macrocell15 0 0 RISE 1 -++++ Path 26 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 48 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_2\/q -Path End : \SPIM:BSPIM:ld_ident\/main_0 -Capture Clock : \SPIM:BSPIM:ld_ident\/clock_0 -Path slack : 490539p +Path Begin : \SPIM:BSPIM:state_1\/q +Path End : Net_439/main_1 +Capture Clock : Net_439/clock_0 +Path slack : 488393p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1314,36 +2310,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5951 ++ Data path delay 8097 ------------------------------------- ---- -End-of-path arrival time (ps) 5951 +End-of-path arrival time (ps) 8097 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ----------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_2\/q macrocell21 1250 1250 486427 RISE 1 -\SPIM:BSPIM:ld_ident\/main_0 macrocell12 4701 5951 490539 RISE 1 +pin name model name delay AT slack edge Fanout +---------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_1\/q macrocell21 1250 1250 482386 RISE 1 +Net_439/main_1 macrocell7 6847 8097 488393 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:ld_ident\/clock_0 macrocell12 0 0 RISE 1 +Net_439/clock_0 macrocell7 0 0 RISE 1 -++++ Path 27 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 49 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_3 -Path End : \SPIM:BSPIM:cnt_enable\/main_4 -Capture Clock : \SPIM:BSPIM:cnt_enable\/clock_0 -Path slack : 490597p +Path Begin : \SPIM:BSPIM:state_1\/q +Path End : Net_479/main_2 +Capture Clock : Net_479/clock_0 +Path slack : 488393p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1354,36 +2350,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5893 ++ Data path delay 8097 ------------------------------------- ---- -End-of-path arrival time (ps) 5893 +End-of-path arrival time (ps) 8097 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_3 count7cell 2110 2110 486847 RISE 1 -\SPIM:BSPIM:cnt_enable\/main_4 macrocell9 3783 5893 490597 RISE 1 +pin name model name delay AT slack edge Fanout +---------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_1\/q macrocell21 1250 1250 482386 RISE 1 +Net_479/main_2 macrocell8 6847 8097 488393 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:cnt_enable\/clock_0 macrocell9 0 0 RISE 1 +Net_479/clock_0 macrocell8 0 0 RISE 1 -++++ Path 28 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 50 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_3 -Path End : \SPIM:BSPIM:state_1\/main_4 -Capture Clock : \SPIM:BSPIM:state_1\/clock_0 -Path slack : 490597p +Path Begin : \SPIM:BSPIM:state_2\/q +Path End : Net_439/main_0 +Capture Clock : Net_439/clock_0 +Path slack : 488705p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1394,36 +2390,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5893 ++ Data path delay 7785 ------------------------------------- ---- -End-of-path arrival time (ps) 5893 +End-of-path arrival time (ps) 7785 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_3 count7cell 2110 2110 486847 RISE 1 -\SPIM:BSPIM:state_1\/main_4 macrocell20 3783 5893 490597 RISE 1 +pin name model name delay AT slack edge Fanout +---------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_2\/q macrocell22 1250 1250 484163 RISE 1 +Net_439/main_0 macrocell7 6535 7785 488705 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +Net_439/clock_0 macrocell7 0 0 RISE 1 -++++ Path 29 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 51 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_3 -Path End : \SPIM:BSPIM:load_cond\/main_4 -Capture Clock : \SPIM:BSPIM:load_cond\/clock_0 -Path slack : 490609p +Path Begin : \SPIM:BSPIM:state_2\/q +Path End : Net_479/main_1 +Capture Clock : Net_479/clock_0 +Path slack : 488705p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1434,36 +2430,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5881 ++ Data path delay 7785 ------------------------------------- ---- -End-of-path arrival time (ps) 5881 +End-of-path arrival time (ps) 7785 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_3 count7cell 2110 2110 486847 RISE 1 -\SPIM:BSPIM:load_cond\/main_4 macrocell13 3771 5881 490609 RISE 1 +pin name model name delay AT slack edge Fanout +---------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_2\/q macrocell22 1250 1250 484163 RISE 1 +Net_479/main_1 macrocell8 6535 7785 488705 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:load_cond\/clock_0 macrocell13 0 0 RISE 1 +Net_479/clock_0 macrocell8 0 0 RISE 1 -++++ Path 30 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_3 -Path End : \SPIM:BSPIM:load_rx_data\/main_1 -Capture Clock : \SPIM:BSPIM:load_rx_data\/clock_0 -Path slack : 490609p +Path Begin : \SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb +Path End : \SPIM:BSPIM:is_spi_done\/main_8 +Capture Clock : \SPIM:BSPIM:is_spi_done\/clock_0 +Path slack : 488894p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1474,36 +2470,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5881 ++ Data path delay 7596 ------------------------------------- ---- -End-of-path arrival time (ps) 5881 +End-of-path arrival time (ps) 7596 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 +\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout --------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_3 count7cell 2110 2110 486847 RISE 1 -\SPIM:BSPIM:load_rx_data\/main_1 macrocell14 3771 5881 490609 RISE 1 +pin name model name delay AT slack edge Fanout +--------------------------------------- ------------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb datapathcell1 5280 5280 485279 RISE 1 +\SPIM:BSPIM:is_spi_done\/main_8 macrocell12 2316 7596 488894 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:load_rx_data\/clock_0 macrocell14 0 0 RISE 1 +\SPIM:BSPIM:is_spi_done\/clock_0 macrocell12 0 0 RISE 1 -++++ Path 31 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 53 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_4 -Path End : \SPIM:BSPIM:cnt_enable\/main_3 -Capture Clock : \SPIM:BSPIM:cnt_enable\/clock_0 -Path slack : 490624p +Path Begin : \SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb +Path End : \SPIM:BSPIM:state_0\/main_3 +Capture Clock : \SPIM:BSPIM:state_0\/clock_0 +Path slack : 488894p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1514,36 +2510,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5866 ++ Data path delay 7596 ------------------------------------- ---- -End-of-path arrival time (ps) 5866 +End-of-path arrival time (ps) 7596 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 +\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_4 count7cell 2110 2110 486920 RISE 1 -\SPIM:BSPIM:cnt_enable\/main_3 macrocell9 3756 5866 490624 RISE 1 +pin name model name delay AT slack edge Fanout +--------------------------------------- ------------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb datapathcell1 5280 5280 485279 RISE 1 +\SPIM:BSPIM:state_0\/main_3 macrocell20 2316 7596 488894 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:cnt_enable\/clock_0 macrocell9 0 0 RISE 1 +\SPIM:BSPIM:state_0\/clock_0 macrocell20 0 0 RISE 1 -++++ Path 32 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_4 -Path End : \SPIM:BSPIM:state_1\/main_3 -Capture Clock : \SPIM:BSPIM:state_1\/clock_0 -Path slack : 490624p +Path Begin : \SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb +Path End : \SPIM:BSPIM:state_2\/main_8 +Capture Clock : \SPIM:BSPIM:state_2\/clock_0 +Path slack : 488894p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1554,36 +2550,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5866 ++ Data path delay 7596 ------------------------------------- ---- -End-of-path arrival time (ps) 5866 +End-of-path arrival time (ps) 7596 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 +\SPIM:BSPIM:sR8:Dp:u0\/clock datapathcell1 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_4 count7cell 2110 2110 486920 RISE 1 -\SPIM:BSPIM:state_1\/main_3 macrocell20 3756 5866 490624 RISE 1 +pin name model name delay AT slack edge Fanout +--------------------------------------- ------------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb datapathcell1 5280 5280 485279 RISE 1 +\SPIM:BSPIM:state_2\/main_8 macrocell22 2316 7596 488894 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 -++++ Path 33 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \SPIM:BSPIM:BitCounter\/count_4 -Path End : \SPIM:BSPIM:load_cond\/main_3 -Capture Clock : \SPIM:BSPIM:load_cond\/clock_0 -Path slack : 490646p +Path End : \SPIM:BSPIM:cnt_enable\/main_3 +Capture Clock : \SPIM:BSPIM:cnt_enable\/clock_0 +Path slack : 489270p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1594,9 +2590,9 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5844 ++ Data path delay 7220 ------------------------------------- ---- -End-of-path arrival time (ps) 5844 +End-of-path arrival time (ps) 7220 Launch Clock Path pin name model name delay AT edge Fanout @@ -1607,23 +2603,23 @@ ClockBlock/dclk_glb_0 clockblockcell 0 Data path pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_4 count7cell 2110 2110 486920 RISE 1 -\SPIM:BSPIM:load_cond\/main_3 macrocell13 3734 5844 490646 RISE 1 +\SPIM:BSPIM:BitCounter\/count_4 count7cell 2110 2110 483289 RISE 1 +\SPIM:BSPIM:cnt_enable\/main_3 macrocell10 5110 7220 489270 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:load_cond\/clock_0 macrocell13 0 0 RISE 1 +\SPIM:BSPIM:cnt_enable\/clock_0 macrocell10 0 0 RISE 1 -++++ Path 34 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \SPIM:BSPIM:BitCounter\/count_4 -Path End : \SPIM:BSPIM:load_rx_data\/main_0 -Capture Clock : \SPIM:BSPIM:load_rx_data\/clock_0 -Path slack : 490646p +Path End : \SPIM:BSPIM:state_1\/main_3 +Capture Clock : \SPIM:BSPIM:state_1\/clock_0 +Path slack : 489270p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1634,9 +2630,9 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5844 ++ Data path delay 7220 ------------------------------------- ---- -End-of-path arrival time (ps) 5844 +End-of-path arrival time (ps) 7220 Launch Clock Path pin name model name delay AT edge Fanout @@ -1645,25 +2641,25 @@ ClockBlock/dclk_glb_0 clockblockcell 0 \SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout --------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_4 count7cell 2110 2110 486920 RISE 1 -\SPIM:BSPIM:load_rx_data\/main_0 macrocell14 3734 5844 490646 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_4 count7cell 2110 2110 483289 RISE 1 +\SPIM:BSPIM:state_1\/main_3 macrocell21 5110 7220 489270 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:load_rx_data\/clock_0 macrocell14 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 -++++ Path 35 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_0\/q -Path End : Net_439/main_2 -Capture Clock : Net_439/clock_0 -Path slack : 490654p +Path Begin : \SPIM:BSPIM:BitCounter\/count_0 +Path End : \SPIM:BSPIM:cnt_enable\/main_7 +Capture Clock : \SPIM:BSPIM:cnt_enable\/clock_0 +Path slack : 489335p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1674,36 +2670,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5836 ++ Data path delay 7155 ------------------------------------- ---- -End-of-path arrival time (ps) 5836 +End-of-path arrival time (ps) 7155 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_0\/clock_0 macrocell19 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ----------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_0\/q macrocell19 1250 1250 487170 RISE 1 -Net_439/main_2 macrocell7 4586 5836 490654 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_0 count7cell 2110 2110 482904 RISE 1 +\SPIM:BSPIM:cnt_enable\/main_7 macrocell10 5045 7155 489335 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -Net_439/clock_0 macrocell7 0 0 RISE 1 +\SPIM:BSPIM:cnt_enable\/clock_0 macrocell10 0 0 RISE 1 -++++ Path 36 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_0\/q -Path End : \SPIM:BSPIM:ld_ident\/main_2 -Capture Clock : \SPIM:BSPIM:ld_ident\/clock_0 -Path slack : 490654p +Path Begin : \SPIM:BSPIM:BitCounter\/count_0 +Path End : \SPIM:BSPIM:state_1\/main_7 +Capture Clock : \SPIM:BSPIM:state_1\/clock_0 +Path slack : 489335p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1714,36 +2710,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5836 ++ Data path delay 7155 ------------------------------------- ---- -End-of-path arrival time (ps) 5836 +End-of-path arrival time (ps) 7155 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_0\/clock_0 macrocell19 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ----------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_0\/q macrocell19 1250 1250 487170 RISE 1 -\SPIM:BSPIM:ld_ident\/main_2 macrocell12 4586 5836 490654 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_0 count7cell 2110 2110 482904 RISE 1 +\SPIM:BSPIM:state_1\/main_7 macrocell21 5045 7155 489335 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:ld_ident\/clock_0 macrocell12 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 -++++ Path 37 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_0\/q -Path End : \SPIM:BSPIM:cnt_enable\/main_2 +Path Begin : \SPIM:BSPIM:BitCounter\/count_3 +Path End : \SPIM:BSPIM:cnt_enable\/main_4 Capture Clock : \SPIM:BSPIM:cnt_enable\/clock_0 -Path slack : 490654p +Path slack : 489421p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1754,36 +2750,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5836 ++ Data path delay 7069 ------------------------------------- ---- -End-of-path arrival time (ps) 5836 +End-of-path arrival time (ps) 7069 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_0\/clock_0 macrocell19 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_0\/q macrocell19 1250 1250 487170 RISE 1 -\SPIM:BSPIM:cnt_enable\/main_2 macrocell9 4586 5836 490654 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_3 count7cell 2110 2110 482985 RISE 1 +\SPIM:BSPIM:cnt_enable\/main_4 macrocell10 4959 7069 489421 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:cnt_enable\/clock_0 macrocell9 0 0 RISE 1 +\SPIM:BSPIM:cnt_enable\/clock_0 macrocell10 0 0 RISE 1 -++++ Path 38 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_0\/q -Path End : \SPIM:BSPIM:state_1\/main_2 +Path Begin : \SPIM:BSPIM:BitCounter\/count_3 +Path End : \SPIM:BSPIM:state_1\/main_4 Capture Clock : \SPIM:BSPIM:state_1\/clock_0 -Path slack : 490654p +Path slack : 489421p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1794,36 +2790,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5836 ++ Data path delay 7069 ------------------------------------- ---- -End-of-path arrival time (ps) 5836 +End-of-path arrival time (ps) 7069 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_0\/clock_0 macrocell19 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ---------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_0\/q macrocell19 1250 1250 487170 RISE 1 -\SPIM:BSPIM:state_1\/main_2 macrocell20 4586 5836 490654 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_3 count7cell 2110 2110 482985 RISE 1 +\SPIM:BSPIM:state_1\/main_4 macrocell21 4959 7069 489421 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 -++++ Path 39 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 61 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_2 -Path End : \SPIM:BSPIM:cnt_enable\/main_5 -Capture Clock : \SPIM:BSPIM:cnt_enable\/clock_0 -Path slack : 490656p +Path Begin : \SPIM:BSPIM:state_0\/q +Path End : \SPIM:BSPIM:mosi_hs_reg\/main_2 +Capture Clock : \SPIM:BSPIM:mosi_hs_reg\/clock_0 +Path slack : 489615p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1834,36 +2830,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5834 ++ Data path delay 6875 ------------------------------------- ---- -End-of-path arrival time (ps) 5834 +End-of-path arrival time (ps) 6875 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 +\SPIM:BSPIM:state_0\/clock_0 macrocell20 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_2 count7cell 2110 2110 486946 RISE 1 -\SPIM:BSPIM:cnt_enable\/main_5 macrocell9 3724 5834 490656 RISE 1 +\SPIM:BSPIM:state_0\/q macrocell20 1250 1250 486610 RISE 1 +\SPIM:BSPIM:mosi_hs_reg\/main_2 macrocell17 5625 6875 489615 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:cnt_enable\/clock_0 macrocell9 0 0 RISE 1 +\SPIM:BSPIM:mosi_hs_reg\/clock_0 macrocell17 0 0 RISE 1 -++++ Path 40 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_2 -Path End : \SPIM:BSPIM:state_1\/main_5 -Capture Clock : \SPIM:BSPIM:state_1\/clock_0 -Path slack : 490656p +Path Begin : \SPIM:BSPIM:state_2\/q +Path End : \SPIM:BSPIM:is_spi_done\/main_0 +Capture Clock : \SPIM:BSPIM:is_spi_done\/clock_0 +Path slack : 489635p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1874,36 +2870,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5834 ++ Data path delay 6855 ------------------------------------- ---- -End-of-path arrival time (ps) 5834 +End-of-path arrival time (ps) 6855 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_2 count7cell 2110 2110 486946 RISE 1 -\SPIM:BSPIM:state_1\/main_5 macrocell20 3724 5834 490656 RISE 1 +\SPIM:BSPIM:state_2\/q macrocell22 1250 1250 484163 RISE 1 +\SPIM:BSPIM:is_spi_done\/main_0 macrocell12 5605 6855 489635 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +\SPIM:BSPIM:is_spi_done\/clock_0 macrocell12 0 0 RISE 1 -++++ Path 41 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 63 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_0 -Path End : \SPIM:BSPIM:cnt_enable\/main_7 -Capture Clock : \SPIM:BSPIM:cnt_enable\/clock_0 -Path slack : 490657p +Path Begin : \SPIM:BSPIM:state_2\/q +Path End : \SPIM:BSPIM:state_0\/main_0 +Capture Clock : \SPIM:BSPIM:state_0\/clock_0 +Path slack : 489635p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1914,36 +2910,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5833 ++ Data path delay 6855 ------------------------------------- ---- -End-of-path arrival time (ps) 5833 +End-of-path arrival time (ps) 6855 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_0 count7cell 2110 2110 486941 RISE 1 -\SPIM:BSPIM:cnt_enable\/main_7 macrocell9 3723 5833 490657 RISE 1 +pin name model name delay AT slack edge Fanout +--------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_2\/q macrocell22 1250 1250 484163 RISE 1 +\SPIM:BSPIM:state_0\/main_0 macrocell20 5605 6855 489635 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:cnt_enable\/clock_0 macrocell9 0 0 RISE 1 +\SPIM:BSPIM:state_0\/clock_0 macrocell20 0 0 RISE 1 -++++ Path 42 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_0 -Path End : \SPIM:BSPIM:state_1\/main_7 -Capture Clock : \SPIM:BSPIM:state_1\/clock_0 -Path slack : 490657p +Path Begin : \SPIM:BSPIM:state_2\/q +Path End : \SPIM:BSPIM:state_2\/main_0 +Capture Clock : \SPIM:BSPIM:state_2\/clock_0 +Path slack : 489635p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1954,36 +2950,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5833 ++ Data path delay 6855 ------------------------------------- ---- -End-of-path arrival time (ps) 5833 +End-of-path arrival time (ps) 6855 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_0 count7cell 2110 2110 486941 RISE 1 -\SPIM:BSPIM:state_1\/main_7 macrocell20 3723 5833 490657 RISE 1 +pin name model name delay AT slack edge Fanout +--------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_2\/q macrocell22 1250 1250 484163 RISE 1 +\SPIM:BSPIM:state_2\/main_0 macrocell22 5605 6855 489635 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 -++++ Path 43 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 65 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_0 -Path End : \SPIM:BSPIM:load_cond\/main_7 -Capture Clock : \SPIM:BSPIM:load_cond\/clock_0 -Path slack : 490667p +Path Begin : \SPIM:BSPIM:BitCounter\/count_2 +Path End : \SPIM:BSPIM:is_spi_done\/main_5 +Capture Clock : \SPIM:BSPIM:is_spi_done\/clock_0 +Path slack : 489693p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -1994,9 +2990,9 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5823 ++ Data path delay 6797 ------------------------------------- ---- -End-of-path arrival time (ps) 5823 +End-of-path arrival time (ps) 6797 Launch Clock Path pin name model name delay AT edge Fanout @@ -2007,23 +3003,23 @@ ClockBlock/dclk_glb_0 clockblockcell 0 Data path pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_0 count7cell 2110 2110 486941 RISE 1 -\SPIM:BSPIM:load_cond\/main_7 macrocell13 3713 5823 490667 RISE 1 +\SPIM:BSPIM:BitCounter\/count_2 count7cell 2110 2110 480914 RISE 1 +\SPIM:BSPIM:is_spi_done\/main_5 macrocell12 4687 6797 489693 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:load_cond\/clock_0 macrocell13 0 0 RISE 1 +\SPIM:BSPIM:is_spi_done\/clock_0 macrocell12 0 0 RISE 1 -++++ Path 44 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 66 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_0 -Path End : \SPIM:BSPIM:load_rx_data\/main_4 -Capture Clock : \SPIM:BSPIM:load_rx_data\/clock_0 -Path slack : 490667p +Path Begin : \SPIM:BSPIM:BitCounter\/count_2 +Path End : \SPIM:BSPIM:state_2\/main_5 +Capture Clock : \SPIM:BSPIM:state_2\/clock_0 +Path slack : 489693p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2034,9 +3030,9 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5823 ++ Data path delay 6797 ------------------------------------- ---- -End-of-path arrival time (ps) 5823 +End-of-path arrival time (ps) 6797 Launch Clock Path pin name model name delay AT edge Fanout @@ -2045,25 +3041,25 @@ ClockBlock/dclk_glb_0 clockblockcell 0 \SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout --------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_0 count7cell 2110 2110 486941 RISE 1 -\SPIM:BSPIM:load_rx_data\/main_4 macrocell14 3713 5823 490667 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_2 count7cell 2110 2110 480914 RISE 1 +\SPIM:BSPIM:state_2\/main_5 macrocell22 4687 6797 489693 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:load_rx_data\/clock_0 macrocell14 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 -++++ Path 45 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 67 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_2 -Path End : \SPIM:BSPIM:load_cond\/main_5 -Capture Clock : \SPIM:BSPIM:load_cond\/clock_0 -Path slack : 490672p +Path Begin : \SPIM:BSPIM:state_0\/q +Path End : Net_439/main_2 +Capture Clock : Net_439/clock_0 +Path slack : 489737p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2074,36 +3070,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5818 ++ Data path delay 6753 ------------------------------------- ---- -End-of-path arrival time (ps) 5818 +End-of-path arrival time (ps) 6753 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 +\SPIM:BSPIM:state_0\/clock_0 macrocell20 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_2 count7cell 2110 2110 486946 RISE 1 -\SPIM:BSPIM:load_cond\/main_5 macrocell13 3708 5818 490672 RISE 1 +pin name model name delay AT slack edge Fanout +---------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_0\/q macrocell20 1250 1250 486610 RISE 1 +Net_439/main_2 macrocell7 5503 6753 489737 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:load_cond\/clock_0 macrocell13 0 0 RISE 1 - +Net_439/clock_0 macrocell7 0 0 RISE 1 -++++ Path 46 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_2 -Path End : \SPIM:BSPIM:load_rx_data\/main_2 -Capture Clock : \SPIM:BSPIM:load_rx_data\/clock_0 -Path slack : 490672p +++++ Path 68 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \SPIM:BSPIM:state_0\/q +Path End : Net_479/main_3 +Capture Clock : Net_479/clock_0 +Path slack : 489737p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2114,36 +3110,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5818 ++ Data path delay 6753 ------------------------------------- ---- -End-of-path arrival time (ps) 5818 +End-of-path arrival time (ps) 6753 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 +\SPIM:BSPIM:state_0\/clock_0 macrocell20 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout --------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_2 count7cell 2110 2110 486946 RISE 1 -\SPIM:BSPIM:load_rx_data\/main_2 macrocell14 3708 5818 490672 RISE 1 +pin name model name delay AT slack edge Fanout +---------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_0\/q macrocell20 1250 1250 486610 RISE 1 +Net_479/main_3 macrocell8 5503 6753 489737 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:load_rx_data\/clock_0 macrocell14 0 0 RISE 1 +Net_479/clock_0 macrocell8 0 0 RISE 1 -++++ Path 47 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 69 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_2\/q -Path End : \SPIM:BSPIM:is_spi_done\/main_0 -Capture Clock : \SPIM:BSPIM:is_spi_done\/clock_0 -Path slack : 490754p +Path Begin : \SPIM:BSPIM:BitCounter\/count_0 +Path End : \SPIM:BSPIM:load_cond\/main_7 +Capture Clock : \SPIM:BSPIM:load_cond\/clock_0 +Path slack : 489892p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2154,36 +3150,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5736 ++ Data path delay 6598 ------------------------------------- ---- -End-of-path arrival time (ps) 5736 +End-of-path arrival time (ps) 6598 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_2\/q macrocell21 1250 1250 486427 RISE 1 -\SPIM:BSPIM:is_spi_done\/main_0 macrocell11 4486 5736 490754 RISE 1 +\SPIM:BSPIM:BitCounter\/count_0 count7cell 2110 2110 482904 RISE 1 +\SPIM:BSPIM:load_cond\/main_7 macrocell14 4488 6598 489892 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:is_spi_done\/clock_0 macrocell11 0 0 RISE 1 +\SPIM:BSPIM:load_cond\/clock_0 macrocell14 0 0 RISE 1 -++++ Path 48 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 70 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_2\/q -Path End : \SPIM:BSPIM:state_0\/main_0 -Capture Clock : \SPIM:BSPIM:state_0\/clock_0 -Path slack : 490754p +Path Begin : \SPIM:BSPIM:BitCounter\/count_0 +Path End : \SPIM:BSPIM:load_rx_data\/main_4 +Capture Clock : \SPIM:BSPIM:load_rx_data\/clock_0 +Path slack : 489892p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2194,36 +3190,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5736 ++ Data path delay 6598 ------------------------------------- ---- -End-of-path arrival time (ps) 5736 +End-of-path arrival time (ps) 6598 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ---------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_2\/q macrocell21 1250 1250 486427 RISE 1 -\SPIM:BSPIM:state_0\/main_0 macrocell19 4486 5736 490754 RISE 1 +pin name model name delay AT slack edge Fanout +-------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_0 count7cell 2110 2110 482904 RISE 1 +\SPIM:BSPIM:load_rx_data\/main_4 macrocell15 4488 6598 489892 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_0\/clock_0 macrocell19 0 0 RISE 1 +\SPIM:BSPIM:load_rx_data\/clock_0 macrocell15 0 0 RISE 1 -++++ Path 49 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 71 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_2\/q -Path End : \SPIM:BSPIM:state_2\/main_0 -Capture Clock : \SPIM:BSPIM:state_2\/clock_0 -Path slack : 490754p +Path Begin : \SPIM:BSPIM:BitCounter\/count_3 +Path End : \SPIM:BSPIM:load_cond\/main_4 +Capture Clock : \SPIM:BSPIM:load_cond\/clock_0 +Path slack : 489973p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2234,36 +3230,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5736 ++ Data path delay 6517 ------------------------------------- ---- -End-of-path arrival time (ps) 5736 +End-of-path arrival time (ps) 6517 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ---------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_2\/q macrocell21 1250 1250 486427 RISE 1 -\SPIM:BSPIM:state_2\/main_0 macrocell21 4486 5736 490754 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_3 count7cell 2110 2110 482985 RISE 1 +\SPIM:BSPIM:load_cond\/main_4 macrocell14 4407 6517 489973 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:load_cond\/clock_0 macrocell14 0 0 RISE 1 -++++ Path 50 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 72 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_0\/q -Path End : \SPIM:BSPIM:mosi_hs_reg\/main_2 -Capture Clock : \SPIM:BSPIM:mosi_hs_reg\/clock_0 -Path slack : 490842p +Path Begin : \SPIM:BSPIM:BitCounter\/count_3 +Path End : \SPIM:BSPIM:load_rx_data\/main_1 +Capture Clock : \SPIM:BSPIM:load_rx_data\/clock_0 +Path slack : 489973p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2274,36 +3270,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5648 ++ Data path delay 6517 ------------------------------------- ---- -End-of-path arrival time (ps) 5648 +End-of-path arrival time (ps) 6517 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_0\/clock_0 macrocell19 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_0\/q macrocell19 1250 1250 487170 RISE 1 -\SPIM:BSPIM:mosi_hs_reg\/main_2 macrocell16 4398 5648 490842 RISE 1 +pin name model name delay AT slack edge Fanout +-------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_3 count7cell 2110 2110 482985 RISE 1 +\SPIM:BSPIM:load_rx_data\/main_1 macrocell15 4407 6517 489973 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_hs_reg\/clock_0 macrocell16 0 0 RISE 1 +\SPIM:BSPIM:load_rx_data\/clock_0 macrocell15 0 0 RISE 1 -++++ Path 51 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 73 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_0\/q -Path End : Net_479/main_3 -Capture Clock : Net_479/clock_0 -Path slack : 490844p +Path Begin : \SPIM:BSPIM:state_1\/q +Path End : \SPIM:BSPIM:ld_ident\/main_1 +Capture Clock : \SPIM:BSPIM:ld_ident\/clock_0 +Path slack : 490069p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2314,36 +3310,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5646 ++ Data path delay 6421 ------------------------------------- ---- -End-of-path arrival time (ps) 5646 +End-of-path arrival time (ps) 6421 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_0\/clock_0 macrocell19 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ----------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_0\/q macrocell19 1250 1250 487170 RISE 1 -Net_479/main_3 macrocell8 4396 5646 490844 RISE 1 +pin name model name delay AT slack edge Fanout +---------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_1\/q macrocell21 1250 1250 482386 RISE 1 +\SPIM:BSPIM:ld_ident\/main_1 macrocell13 5171 6421 490069 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -Net_479/clock_0 macrocell8 0 0 RISE 1 +\SPIM:BSPIM:ld_ident\/clock_0 macrocell13 0 0 RISE 1 -++++ Path 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 74 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_0\/q -Path End : \SPIM:BSPIM:load_cond\/main_2 +Path Begin : \SPIM:BSPIM:state_1\/q +Path End : \SPIM:BSPIM:load_cond\/main_1 Capture Clock : \SPIM:BSPIM:load_cond\/clock_0 -Path slack : 490844p +Path slack : 490069p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2354,36 +3350,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5646 ++ Data path delay 6421 ------------------------------------- ---- -End-of-path arrival time (ps) 5646 +End-of-path arrival time (ps) 6421 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_0\/clock_0 macrocell19 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout ----------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_0\/q macrocell19 1250 1250 487170 RISE 1 -\SPIM:BSPIM:load_cond\/main_2 macrocell13 4396 5646 490844 RISE 1 +\SPIM:BSPIM:state_1\/q macrocell21 1250 1250 482386 RISE 1 +\SPIM:BSPIM:load_cond\/main_1 macrocell14 5171 6421 490069 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:load_cond\/clock_0 macrocell13 0 0 RISE 1 +\SPIM:BSPIM:load_cond\/clock_0 macrocell14 0 0 RISE 1 -++++ Path 53 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 75 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_1\/q -Path End : \SPIM:BSPIM:is_spi_done\/main_1 -Capture Clock : \SPIM:BSPIM:is_spi_done\/clock_0 -Path slack : 491050p +Path Begin : \SPIM:BSPIM:BitCounter\/count_4 +Path End : \SPIM:BSPIM:mosi_pre_reg\/main_4 +Capture Clock : \SPIM:BSPIM:mosi_pre_reg\/clock_0 +Path slack : 490154p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2394,36 +3390,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5440 ++ Data path delay 6336 ------------------------------------- ---- -End-of-path arrival time (ps) 5440 +End-of-path arrival time (ps) 6336 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_1\/q macrocell20 1250 1250 486723 RISE 1 -\SPIM:BSPIM:is_spi_done\/main_1 macrocell11 4190 5440 491050 RISE 1 +pin name model name delay AT slack edge Fanout +-------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_4 count7cell 2110 2110 483289 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/main_4 macrocell18 4226 6336 490154 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:is_spi_done\/clock_0 macrocell11 0 0 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell18 0 0 RISE 1 -++++ Path 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 76 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_1\/q -Path End : \SPIM:BSPIM:state_0\/main_1 -Capture Clock : \SPIM:BSPIM:state_0\/clock_0 -Path slack : 491050p +Path Begin : \SPIM:BSPIM:state_0\/q +Path End : \SPIM:BSPIM:ld_ident\/main_2 +Capture Clock : \SPIM:BSPIM:ld_ident\/clock_0 +Path slack : 490244p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2434,36 +3430,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5440 ++ Data path delay 6246 ------------------------------------- ---- -End-of-path arrival time (ps) 5440 +End-of-path arrival time (ps) 6246 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +\SPIM:BSPIM:state_0\/clock_0 macrocell20 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ---------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_1\/q macrocell20 1250 1250 486723 RISE 1 -\SPIM:BSPIM:state_0\/main_1 macrocell19 4190 5440 491050 RISE 1 +pin name model name delay AT slack edge Fanout +---------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_0\/q macrocell20 1250 1250 486610 RISE 1 +\SPIM:BSPIM:ld_ident\/main_2 macrocell13 4996 6246 490244 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_0\/clock_0 macrocell19 0 0 RISE 1 +\SPIM:BSPIM:ld_ident\/clock_0 macrocell13 0 0 RISE 1 -++++ Path 55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 77 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_1\/q -Path End : \SPIM:BSPIM:state_2\/main_1 -Capture Clock : \SPIM:BSPIM:state_2\/clock_0 -Path slack : 491050p +Path Begin : \SPIM:BSPIM:state_0\/q +Path End : \SPIM:BSPIM:load_cond\/main_2 +Capture Clock : \SPIM:BSPIM:load_cond\/clock_0 +Path slack : 490244p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2474,36 +3470,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5440 ++ Data path delay 6246 ------------------------------------- ---- -End-of-path arrival time (ps) 5440 +End-of-path arrival time (ps) 6246 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +\SPIM:BSPIM:state_0\/clock_0 macrocell20 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ---------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_1\/q macrocell20 1250 1250 486723 RISE 1 -\SPIM:BSPIM:state_2\/main_1 macrocell21 4190 5440 491050 RISE 1 +pin name model name delay AT slack edge Fanout +----------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_0\/q macrocell20 1250 1250 486610 RISE 1 +\SPIM:BSPIM:load_cond\/main_2 macrocell14 4996 6246 490244 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:load_cond\/clock_0 macrocell14 0 0 RISE 1 -++++ Path 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 78 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_1\/q -Path End : \SPIM:BSPIM:mosi_pre_reg\/main_1 -Capture Clock : \SPIM:BSPIM:mosi_pre_reg\/clock_0 -Path slack : 491073p +Path Begin : \SPIM:BSPIM:state_0\/q +Path End : \SPIM:BSPIM:cnt_enable\/main_2 +Capture Clock : \SPIM:BSPIM:cnt_enable\/clock_0 +Path slack : 490259p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2514,36 +3510,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5417 ++ Data path delay 6231 ------------------------------------- ---- -End-of-path arrival time (ps) 5417 +End-of-path arrival time (ps) 6231 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +\SPIM:BSPIM:state_0\/clock_0 macrocell20 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout --------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_1\/q macrocell20 1250 1250 486723 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/main_1 macrocell17 4167 5417 491073 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------ ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_0\/q macrocell20 1250 1250 486610 RISE 1 +\SPIM:BSPIM:cnt_enable\/main_2 macrocell10 4981 6231 490259 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell17 0 0 RISE 1 +\SPIM:BSPIM:cnt_enable\/clock_0 macrocell10 0 0 RISE 1 -++++ Path 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 79 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_2\/q -Path End : \SPIM:BSPIM:mosi_pre_reg\/main_0 -Capture Clock : \SPIM:BSPIM:mosi_pre_reg\/clock_0 -Path slack : 491220p +Path Begin : \SPIM:BSPIM:state_0\/q +Path End : \SPIM:BSPIM:state_1\/main_2 +Capture Clock : \SPIM:BSPIM:state_1\/clock_0 +Path slack : 490259p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2554,36 +3550,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5270 ++ Data path delay 6231 ------------------------------------- ---- -End-of-path arrival time (ps) 5270 +End-of-path arrival time (ps) 6231 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:state_0\/clock_0 macrocell20 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout --------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_2\/q macrocell21 1250 1250 486427 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/main_0 macrocell17 4020 5270 491220 RISE 1 +pin name model name delay AT slack edge Fanout +--------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_0\/q macrocell20 1250 1250 486610 RISE 1 +\SPIM:BSPIM:state_1\/main_2 macrocell21 4981 6231 490259 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell17 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 -++++ Path 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 80 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_1 -Path End : \SPIM:BSPIM:mosi_pre_reg\/main_7 -Capture Clock : \SPIM:BSPIM:mosi_pre_reg\/clock_0 -Path slack : 491268p +Path Begin : \SPIM:BSPIM:BitCounter\/count_4 +Path End : \SPIM:BSPIM:load_cond\/main_3 +Capture Clock : \SPIM:BSPIM:load_cond\/clock_0 +Path slack : 490277p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2594,9 +3590,9 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5222 ++ Data path delay 6213 ------------------------------------- ---- -End-of-path arrival time (ps) 5222 +End-of-path arrival time (ps) 6213 Launch Clock Path pin name model name delay AT edge Fanout @@ -2605,25 +3601,25 @@ ClockBlock/dclk_glb_0 clockblockcell 0 \SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout --------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_1 count7cell 2110 2110 486627 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/main_7 macrocell17 3112 5222 491268 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_4 count7cell 2110 2110 483289 RISE 1 +\SPIM:BSPIM:load_cond\/main_3 macrocell14 4103 6213 490277 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell17 0 0 RISE 1 +\SPIM:BSPIM:load_cond\/clock_0 macrocell14 0 0 RISE 1 -++++ Path 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 81 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_1 -Path End : \SPIM:BSPIM:is_spi_done\/main_6 -Capture Clock : \SPIM:BSPIM:is_spi_done\/clock_0 -Path slack : 491270p +Path Begin : \SPIM:BSPIM:BitCounter\/count_4 +Path End : \SPIM:BSPIM:load_rx_data\/main_0 +Capture Clock : \SPIM:BSPIM:load_rx_data\/clock_0 +Path slack : 490277p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2634,9 +3630,9 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5220 ++ Data path delay 6213 ------------------------------------- ---- -End-of-path arrival time (ps) 5220 +End-of-path arrival time (ps) 6213 Launch Clock Path pin name model name delay AT edge Fanout @@ -2645,25 +3641,25 @@ ClockBlock/dclk_glb_0 clockblockcell 0 \SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_1 count7cell 2110 2110 486627 RISE 1 -\SPIM:BSPIM:is_spi_done\/main_6 macrocell11 3110 5220 491270 RISE 1 +pin name model name delay AT slack edge Fanout +-------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_4 count7cell 2110 2110 483289 RISE 1 +\SPIM:BSPIM:load_rx_data\/main_0 macrocell15 4103 6213 490277 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:is_spi_done\/clock_0 macrocell11 0 0 RISE 1 +\SPIM:BSPIM:load_rx_data\/clock_0 macrocell15 0 0 RISE 1 -++++ Path 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 82 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \SPIM:BSPIM:BitCounter\/count_1 -Path End : \SPIM:BSPIM:state_2\/main_6 -Capture Clock : \SPIM:BSPIM:state_2\/clock_0 -Path slack : 491270p +Path End : \SPIM:BSPIM:load_cond\/main_6 +Capture Clock : \SPIM:BSPIM:load_cond\/clock_0 +Path slack : 490389p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2674,9 +3670,9 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5220 ++ Data path delay 6101 ------------------------------------- ---- -End-of-path arrival time (ps) 5220 +End-of-path arrival time (ps) 6101 Launch Clock Path pin name model name delay AT edge Fanout @@ -2687,23 +3683,23 @@ ClockBlock/dclk_glb_0 clockblockcell 0 Data path pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_1 count7cell 2110 2110 486627 RISE 1 -\SPIM:BSPIM:state_2\/main_6 macrocell21 3110 5220 491270 RISE 1 +\SPIM:BSPIM:BitCounter\/count_1 count7cell 2110 2110 483401 RISE 1 +\SPIM:BSPIM:load_cond\/main_6 macrocell14 3991 6101 490389 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:load_cond\/clock_0 macrocell14 0 0 RISE 1 -++++ Path 61 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 83 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_3 -Path End : \SPIM:BSPIM:mosi_pre_reg\/main_5 -Capture Clock : \SPIM:BSPIM:mosi_pre_reg\/clock_0 -Path slack : 491415p +Path Begin : \SPIM:BSPIM:BitCounter\/count_1 +Path End : \SPIM:BSPIM:load_rx_data\/main_3 +Capture Clock : \SPIM:BSPIM:load_rx_data\/clock_0 +Path slack : 490389p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2714,9 +3710,9 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5075 ++ Data path delay 6101 ------------------------------------- ---- -End-of-path arrival time (ps) 5075 +End-of-path arrival time (ps) 6101 Launch Clock Path pin name model name delay AT edge Fanout @@ -2727,23 +3723,23 @@ ClockBlock/dclk_glb_0 clockblockcell 0 Data path pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_3 count7cell 2110 2110 486847 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/main_5 macrocell17 2965 5075 491415 RISE 1 +\SPIM:BSPIM:BitCounter\/count_1 count7cell 2110 2110 483401 RISE 1 +\SPIM:BSPIM:load_rx_data\/main_3 macrocell15 3991 6101 490389 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell17 0 0 RISE 1 +\SPIM:BSPIM:load_rx_data\/clock_0 macrocell15 0 0 RISE 1 -++++ Path 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 84 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_3 -Path End : \SPIM:BSPIM:is_spi_done\/main_4 -Capture Clock : \SPIM:BSPIM:is_spi_done\/clock_0 -Path slack : 491426p +Path Begin : \SPIM:BSPIM:BitCounter\/count_1 +Path End : \SPIM:BSPIM:cnt_enable\/main_6 +Capture Clock : \SPIM:BSPIM:cnt_enable\/clock_0 +Path slack : 490547p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2754,9 +3750,9 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5064 ++ Data path delay 5943 ------------------------------------- ---- -End-of-path arrival time (ps) 5064 +End-of-path arrival time (ps) 5943 Launch Clock Path pin name model name delay AT edge Fanout @@ -2767,23 +3763,23 @@ ClockBlock/dclk_glb_0 clockblockcell 0 Data path pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_3 count7cell 2110 2110 486847 RISE 1 -\SPIM:BSPIM:is_spi_done\/main_4 macrocell11 2954 5064 491426 RISE 1 +\SPIM:BSPIM:BitCounter\/count_1 count7cell 2110 2110 483401 RISE 1 +\SPIM:BSPIM:cnt_enable\/main_6 macrocell10 3833 5943 490547 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:is_spi_done\/clock_0 macrocell11 0 0 RISE 1 +\SPIM:BSPIM:cnt_enable\/clock_0 macrocell10 0 0 RISE 1 -++++ Path 63 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 85 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_3 -Path End : \SPIM:BSPIM:state_2\/main_4 -Capture Clock : \SPIM:BSPIM:state_2\/clock_0 -Path slack : 491426p +Path Begin : \SPIM:BSPIM:BitCounter\/count_1 +Path End : \SPIM:BSPIM:state_1\/main_6 +Capture Clock : \SPIM:BSPIM:state_1\/clock_0 +Path slack : 490547p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2794,9 +3790,9 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5064 ++ Data path delay 5943 ------------------------------------- ---- -End-of-path arrival time (ps) 5064 +End-of-path arrival time (ps) 5943 Launch Clock Path pin name model name delay AT edge Fanout @@ -2807,23 +3803,23 @@ ClockBlock/dclk_glb_0 clockblockcell 0 Data path pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_3 count7cell 2110 2110 486847 RISE 1 -\SPIM:BSPIM:state_2\/main_4 macrocell21 2954 5064 491426 RISE 1 +\SPIM:BSPIM:BitCounter\/count_1 count7cell 2110 2110 483401 RISE 1 +\SPIM:BSPIM:state_1\/main_6 macrocell21 3833 5943 490547 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 -++++ Path 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 86 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : Net_479/q -Path End : Net_479/main_0 -Capture Clock : Net_479/clock_0 -Path slack : 491459p +Path Begin : \SPIM:BSPIM:BitCounter\/count_4 +Path End : \SPIM:BSPIM:is_spi_done\/main_3 +Capture Clock : \SPIM:BSPIM:is_spi_done\/clock_0 +Path slack : 490709p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2834,36 +3830,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5031 ++ Data path delay 5781 ------------------------------------- ---- -End-of-path arrival time (ps) 5031 +End-of-path arrival time (ps) 5781 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -Net_479/clock_0 macrocell8 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout --------------- ----------- ----- ----- ------ ---- ------ -Net_479/q macrocell8 1250 1250 491459 RISE 1 -Net_479/main_0 macrocell8 3781 5031 491459 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_4 count7cell 2110 2110 483289 RISE 1 +\SPIM:BSPIM:is_spi_done\/main_3 macrocell12 3671 5781 490709 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -Net_479/clock_0 macrocell8 0 0 RISE 1 +\SPIM:BSPIM:is_spi_done\/clock_0 macrocell12 0 0 RISE 1 -++++ Path 65 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 87 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_0\/q -Path End : \SPIM:BSPIM:is_spi_done\/main_2 -Capture Clock : \SPIM:BSPIM:is_spi_done\/clock_0 -Path slack : 491497p +Path Begin : \SPIM:BSPIM:BitCounter\/count_4 +Path End : \SPIM:BSPIM:state_2\/main_3 +Capture Clock : \SPIM:BSPIM:state_2\/clock_0 +Path slack : 490709p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2874,36 +3870,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4993 ++ Data path delay 5781 ------------------------------------- ---- -End-of-path arrival time (ps) 4993 +End-of-path arrival time (ps) 5781 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_0\/clock_0 macrocell19 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_0\/q macrocell19 1250 1250 487170 RISE 1 -\SPIM:BSPIM:is_spi_done\/main_2 macrocell11 3743 4993 491497 RISE 1 +\SPIM:BSPIM:BitCounter\/count_4 count7cell 2110 2110 483289 RISE 1 +\SPIM:BSPIM:state_2\/main_3 macrocell22 3671 5781 490709 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:is_spi_done\/clock_0 macrocell11 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 -++++ Path 66 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 88 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \SPIM:BSPIM:state_0\/q -Path End : \SPIM:BSPIM:state_0\/main_2 -Capture Clock : \SPIM:BSPIM:state_0\/clock_0 -Path slack : 491497p +Path End : \SPIM:BSPIM:is_spi_done\/main_2 +Capture Clock : \SPIM:BSPIM:is_spi_done\/clock_0 +Path slack : 490956p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2914,36 +3910,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4993 ++ Data path delay 5534 ------------------------------------- ---- -End-of-path arrival time (ps) 4993 +End-of-path arrival time (ps) 5534 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_0\/clock_0 macrocell19 0 0 RISE 1 +\SPIM:BSPIM:state_0\/clock_0 macrocell20 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ---------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_0\/q macrocell19 1250 1250 487170 RISE 1 -\SPIM:BSPIM:state_0\/main_2 macrocell19 3743 4993 491497 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_0\/q macrocell20 1250 1250 486610 RISE 1 +\SPIM:BSPIM:is_spi_done\/main_2 macrocell12 4284 5534 490956 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_0\/clock_0 macrocell19 0 0 RISE 1 +\SPIM:BSPIM:is_spi_done\/clock_0 macrocell12 0 0 RISE 1 -++++ Path 67 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 89 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \SPIM:BSPIM:state_0\/q -Path End : \SPIM:BSPIM:state_2\/main_2 -Capture Clock : \SPIM:BSPIM:state_2\/clock_0 -Path slack : 491497p +Path End : \SPIM:BSPIM:state_0\/main_2 +Capture Clock : \SPIM:BSPIM:state_0\/clock_0 +Path slack : 490956p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2954,36 +3950,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4993 ++ Data path delay 5534 ------------------------------------- ---- -End-of-path arrival time (ps) 4993 +End-of-path arrival time (ps) 5534 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_0\/clock_0 macrocell19 0 0 RISE 1 +\SPIM:BSPIM:state_0\/clock_0 macrocell20 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout --------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_0\/q macrocell19 1250 1250 487170 RISE 1 -\SPIM:BSPIM:state_2\/main_2 macrocell21 3743 4993 491497 RISE 1 +\SPIM:BSPIM:state_0\/q macrocell20 1250 1250 486610 RISE 1 +\SPIM:BSPIM:state_0\/main_2 macrocell20 4284 5534 490956 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:state_0\/clock_0 macrocell20 0 0 RISE 1 -++++ Path 68 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 90 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \SPIM:BSPIM:state_0\/q -Path End : \SPIM:BSPIM:mosi_pre_reg\/main_2 -Capture Clock : \SPIM:BSPIM:mosi_pre_reg\/clock_0 -Path slack : 491497p +Path End : \SPIM:BSPIM:state_2\/main_2 +Capture Clock : \SPIM:BSPIM:state_2\/clock_0 +Path slack : 490956p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -2994,36 +3990,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4993 ++ Data path delay 5534 ------------------------------------- ---- -End-of-path arrival time (ps) 4993 +End-of-path arrival time (ps) 5534 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_0\/clock_0 macrocell19 0 0 RISE 1 +\SPIM:BSPIM:state_0\/clock_0 macrocell20 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout --------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_0\/q macrocell19 1250 1250 487170 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/main_2 macrocell17 3743 4993 491497 RISE 1 +pin name model name delay AT slack edge Fanout +--------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_0\/q macrocell20 1250 1250 486610 RISE 1 +\SPIM:BSPIM:state_2\/main_2 macrocell22 4284 5534 490956 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell17 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 -++++ Path 69 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 91 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_4 -Path End : \SPIM:BSPIM:mosi_pre_reg\/main_4 +Path Begin : \SPIM:BSPIM:BitCounter\/count_2 +Path End : \SPIM:BSPIM:mosi_pre_reg\/main_6 Capture Clock : \SPIM:BSPIM:mosi_pre_reg\/clock_0 -Path slack : 491549p +Path slack : 491102p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3034,9 +4030,9 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4941 ++ Data path delay 5388 ------------------------------------- ---- -End-of-path arrival time (ps) 4941 +End-of-path arrival time (ps) 5388 Launch Clock Path pin name model name delay AT edge Fanout @@ -3047,23 +4043,23 @@ ClockBlock/dclk_glb_0 clockblockcell 0 Data path pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_4 count7cell 2110 2110 486920 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/main_4 macrocell17 2831 4941 491549 RISE 1 +\SPIM:BSPIM:BitCounter\/count_2 count7cell 2110 2110 480914 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/main_6 macrocell18 3278 5388 491102 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell17 0 0 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell18 0 0 RISE 1 -++++ Path 70 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 92 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_4 -Path End : \SPIM:BSPIM:is_spi_done\/main_3 -Capture Clock : \SPIM:BSPIM:is_spi_done\/clock_0 -Path slack : 491567p +Path Begin : \SPIM:BSPIM:state_1\/q +Path End : \SPIM:BSPIM:cnt_enable\/main_1 +Capture Clock : \SPIM:BSPIM:cnt_enable\/clock_0 +Path slack : 491187p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3074,36 +4070,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4923 ++ Data path delay 5303 ------------------------------------- ---- -End-of-path arrival time (ps) 4923 +End-of-path arrival time (ps) 5303 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_4 count7cell 2110 2110 486920 RISE 1 -\SPIM:BSPIM:is_spi_done\/main_3 macrocell11 2813 4923 491567 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------ ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_1\/q macrocell21 1250 1250 482386 RISE 1 +\SPIM:BSPIM:cnt_enable\/main_1 macrocell10 4053 5303 491187 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:is_spi_done\/clock_0 macrocell11 0 0 RISE 1 +\SPIM:BSPIM:cnt_enable\/clock_0 macrocell10 0 0 RISE 1 -++++ Path 71 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 93 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_4 -Path End : \SPIM:BSPIM:state_2\/main_3 -Capture Clock : \SPIM:BSPIM:state_2\/clock_0 -Path slack : 491567p +Path Begin : \SPIM:BSPIM:state_1\/q +Path End : \SPIM:BSPIM:state_1\/main_1 +Capture Clock : \SPIM:BSPIM:state_1\/clock_0 +Path slack : 491187p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3114,36 +4110,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4923 ++ Data path delay 5303 ------------------------------------- ---- -End-of-path arrival time (ps) 4923 +End-of-path arrival time (ps) 5303 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_4 count7cell 2110 2110 486920 RISE 1 -\SPIM:BSPIM:state_2\/main_3 macrocell21 2813 4923 491567 RISE 1 +pin name model name delay AT slack edge Fanout +--------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:state_1\/q macrocell21 1250 1250 482386 RISE 1 +\SPIM:BSPIM:state_1\/main_1 macrocell21 4053 5303 491187 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 -++++ Path 72 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 94 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_0 -Path End : \SPIM:BSPIM:mosi_pre_reg\/main_8 +Path Begin : \SPIM:BSPIM:state_0\/q +Path End : \SPIM:BSPIM:mosi_pre_reg\/main_2 Capture Clock : \SPIM:BSPIM:mosi_pre_reg\/clock_0 -Path slack : 491754p +Path slack : 491235p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3154,36 +4150,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4736 ++ Data path delay 5255 ------------------------------------- ---- -End-of-path arrival time (ps) 4736 +End-of-path arrival time (ps) 5255 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 +\SPIM:BSPIM:state_0\/clock_0 macrocell20 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_0 count7cell 2110 2110 486941 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/main_8 macrocell17 2626 4736 491754 RISE 1 +\SPIM:BSPIM:state_0\/q macrocell20 1250 1250 486610 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/main_2 macrocell18 4005 5255 491235 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell17 0 0 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell18 0 0 RISE 1 -++++ Path 73 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 95 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_2 -Path End : \SPIM:BSPIM:mosi_pre_reg\/main_6 +Path Begin : \SPIM:BSPIM:BitCounter\/count_1 +Path End : \SPIM:BSPIM:mosi_pre_reg\/main_7 Capture Clock : \SPIM:BSPIM:mosi_pre_reg\/clock_0 -Path slack : 491757p +Path slack : 491268p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3194,9 +4190,9 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4733 ++ Data path delay 5222 ------------------------------------- ---- -End-of-path arrival time (ps) 4733 +End-of-path arrival time (ps) 5222 Launch Clock Path pin name model name delay AT edge Fanout @@ -3207,23 +4203,23 @@ ClockBlock/dclk_glb_0 clockblockcell 0 Data path pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_2 count7cell 2110 2110 486946 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/main_6 macrocell17 2623 4733 491757 RISE 1 +\SPIM:BSPIM:BitCounter\/count_1 count7cell 2110 2110 483401 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/main_7 macrocell18 3112 5222 491268 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell17 0 0 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell18 0 0 RISE 1 -++++ Path 74 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 96 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_0 -Path End : \SPIM:BSPIM:is_spi_done\/main_7 +Path Begin : \SPIM:BSPIM:BitCounter\/count_1 +Path End : \SPIM:BSPIM:is_spi_done\/main_6 Capture Clock : \SPIM:BSPIM:is_spi_done\/clock_0 -Path slack : 491764p +Path slack : 491270p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3234,9 +4230,9 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4726 ++ Data path delay 5220 ------------------------------------- ---- -End-of-path arrival time (ps) 4726 +End-of-path arrival time (ps) 5220 Launch Clock Path pin name model name delay AT edge Fanout @@ -3247,23 +4243,23 @@ ClockBlock/dclk_glb_0 clockblockcell 0 Data path pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_0 count7cell 2110 2110 486941 RISE 1 -\SPIM:BSPIM:is_spi_done\/main_7 macrocell11 2616 4726 491764 RISE 1 +\SPIM:BSPIM:BitCounter\/count_1 count7cell 2110 2110 483401 RISE 1 +\SPIM:BSPIM:is_spi_done\/main_6 macrocell12 3110 5220 491270 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:is_spi_done\/clock_0 macrocell11 0 0 RISE 1 +\SPIM:BSPIM:is_spi_done\/clock_0 macrocell12 0 0 RISE 1 -++++ Path 75 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 97 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_0 -Path End : \SPIM:BSPIM:state_2\/main_7 +Path Begin : \SPIM:BSPIM:BitCounter\/count_1 +Path End : \SPIM:BSPIM:state_2\/main_6 Capture Clock : \SPIM:BSPIM:state_2\/clock_0 -Path slack : 491764p +Path slack : 491270p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3274,9 +4270,9 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4726 ++ Data path delay 5220 ------------------------------------- ---- -End-of-path arrival time (ps) 4726 +End-of-path arrival time (ps) 5220 Launch Clock Path pin name model name delay AT edge Fanout @@ -3287,23 +4283,23 @@ ClockBlock/dclk_glb_0 clockblockcell 0 Data path pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_0 count7cell 2110 2110 486941 RISE 1 -\SPIM:BSPIM:state_2\/main_7 macrocell21 2616 4726 491764 RISE 1 +\SPIM:BSPIM:BitCounter\/count_1 count7cell 2110 2110 483401 RISE 1 +\SPIM:BSPIM:state_2\/main_6 macrocell22 3110 5220 491270 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 -++++ Path 76 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 98 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_2 -Path End : \SPIM:BSPIM:is_spi_done\/main_5 -Capture Clock : \SPIM:BSPIM:is_spi_done\/clock_0 -Path slack : 491769p +Path Begin : \SPIM:BSPIM:BitCounter\/count_0 +Path End : \SPIM:BSPIM:mosi_pre_reg\/main_8 +Capture Clock : \SPIM:BSPIM:mosi_pre_reg\/clock_0 +Path slack : 491427p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3314,9 +4310,9 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4721 ++ Data path delay 5063 ------------------------------------- ---- -End-of-path arrival time (ps) 4721 +End-of-path arrival time (ps) 5063 Launch Clock Path pin name model name delay AT edge Fanout @@ -3325,25 +4321,25 @@ ClockBlock/dclk_glb_0 clockblockcell 0 \SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_2 count7cell 2110 2110 486946 RISE 1 -\SPIM:BSPIM:is_spi_done\/main_5 macrocell11 2611 4721 491769 RISE 1 +pin name model name delay AT slack edge Fanout +-------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_0 count7cell 2110 2110 482904 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/main_8 macrocell18 2953 5063 491427 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:is_spi_done\/clock_0 macrocell11 0 0 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell18 0 0 RISE 1 -++++ Path 77 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 99 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:BitCounter\/count_2 -Path End : \SPIM:BSPIM:state_2\/main_5 -Capture Clock : \SPIM:BSPIM:state_2\/clock_0 -Path slack : 491769p +Path Begin : \SPIM:BSPIM:BitCounter\/count_0 +Path End : \SPIM:BSPIM:is_spi_done\/main_7 +Capture Clock : \SPIM:BSPIM:is_spi_done\/clock_0 +Path slack : 491437p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3354,9 +4350,9 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4721 ++ Data path delay 5053 ------------------------------------- ---- -End-of-path arrival time (ps) 4721 +End-of-path arrival time (ps) 5053 Launch Clock Path pin name model name delay AT edge Fanout @@ -3367,23 +4363,23 @@ ClockBlock/dclk_glb_0 clockblockcell 0 Data path pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:BitCounter\/count_2 count7cell 2110 2110 486946 RISE 1 -\SPIM:BSPIM:state_2\/main_5 macrocell21 2611 4721 491769 RISE 1 +\SPIM:BSPIM:BitCounter\/count_0 count7cell 2110 2110 482904 RISE 1 +\SPIM:BSPIM:is_spi_done\/main_7 macrocell12 2943 5053 491437 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:is_spi_done\/clock_0 macrocell12 0 0 RISE 1 -++++ Path 78 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 100 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:ld_ident\/q -Path End : \SPIM:BSPIM:mosi_pre_reg\/main_10 -Capture Clock : \SPIM:BSPIM:mosi_pre_reg\/clock_0 -Path slack : 491866p +Path Begin : \SPIM:BSPIM:BitCounter\/count_0 +Path End : \SPIM:BSPIM:state_2\/main_7 +Capture Clock : \SPIM:BSPIM:state_2\/clock_0 +Path slack : 491437p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3394,36 +4390,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4624 ++ Data path delay 5053 ------------------------------------- ---- -End-of-path arrival time (ps) 4624 +End-of-path arrival time (ps) 5053 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:ld_ident\/clock_0 macrocell12 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ---------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:ld_ident\/q macrocell12 1250 1250 491866 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/main_10 macrocell17 3374 4624 491866 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_0 count7cell 2110 2110 482904 RISE 1 +\SPIM:BSPIM:state_2\/main_7 macrocell22 2943 5053 491437 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell17 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 -++++ Path 79 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 101 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:is_spi_done\/q -Path End : \SPIM:BSPIM:cnt_enable\/main_8 -Capture Clock : \SPIM:BSPIM:cnt_enable\/clock_0 -Path slack : 492007p +Path Begin : Net_479/q +Path End : Net_479/main_0 +Capture Clock : Net_479/clock_0 +Path slack : 491718p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3434,36 +4430,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4483 ++ Data path delay 4772 ------------------------------------- ---- -End-of-path arrival time (ps) 4483 +End-of-path arrival time (ps) 4772 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:is_spi_done\/clock_0 macrocell11 0 0 RISE 1 +Net_479/clock_0 macrocell8 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:is_spi_done\/q macrocell11 1250 1250 492007 RISE 1 -\SPIM:BSPIM:cnt_enable\/main_8 macrocell9 3233 4483 492007 RISE 1 +pin name model name delay AT slack edge Fanout +-------------- ----------- ----- ----- ------ ---- ------ +Net_479/q macrocell8 1250 1250 491718 RISE 1 +Net_479/main_0 macrocell8 3522 4772 491718 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:cnt_enable\/clock_0 macrocell9 0 0 RISE 1 +Net_479/clock_0 macrocell8 0 0 RISE 1 -++++ Path 80 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 102 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:is_spi_done\/q -Path End : \SPIM:BSPIM:state_1\/main_9 -Capture Clock : \SPIM:BSPIM:state_1\/clock_0 -Path slack : 492007p +Path Begin : \SPIM:BSPIM:BitCounter\/count_3 +Path End : \SPIM:BSPIM:mosi_pre_reg\/main_5 +Capture Clock : \SPIM:BSPIM:mosi_pre_reg\/clock_0 +Path slack : 491757p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3474,36 +4470,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4483 ++ Data path delay 4733 ------------------------------------- ---- -End-of-path arrival time (ps) 4483 +End-of-path arrival time (ps) 4733 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:is_spi_done\/clock_0 macrocell11 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ---------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:is_spi_done\/q macrocell11 1250 1250 492007 RISE 1 -\SPIM:BSPIM:state_1\/main_9 macrocell20 3233 4483 492007 RISE 1 +pin name model name delay AT slack edge Fanout +-------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_3 count7cell 2110 2110 482985 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/main_5 macrocell18 2623 4733 491757 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell18 0 0 RISE 1 -++++ Path 81 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 103 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:mosi_hs_reg\/q -Path End : \SPIM:BSPIM:mosi_hs_reg\/main_4 -Capture Clock : \SPIM:BSPIM:mosi_hs_reg\/clock_0 -Path slack : 492087p +Path Begin : \SPIM:BSPIM:BitCounter\/count_3 +Path End : \SPIM:BSPIM:is_spi_done\/main_4 +Capture Clock : \SPIM:BSPIM:is_spi_done\/clock_0 +Path slack : 491765p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3514,36 +4510,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4403 ++ Data path delay 4725 ------------------------------------- ---- -End-of-path arrival time (ps) 4403 +End-of-path arrival time (ps) 4725 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_hs_reg\/clock_0 macrocell16 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:mosi_hs_reg\/q macrocell16 1250 1250 492087 RISE 1 -\SPIM:BSPIM:mosi_hs_reg\/main_4 macrocell16 3153 4403 492087 RISE 1 +\SPIM:BSPIM:BitCounter\/count_3 count7cell 2110 2110 482985 RISE 1 +\SPIM:BSPIM:is_spi_done\/main_4 macrocell12 2615 4725 491765 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_hs_reg\/clock_0 macrocell16 0 0 RISE 1 +\SPIM:BSPIM:is_spi_done\/clock_0 macrocell12 0 0 RISE 1 -++++ Path 82 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 104 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_1\/q -Path End : \SPIM:BSPIM:cnt_enable\/main_1 -Capture Clock : \SPIM:BSPIM:cnt_enable\/clock_0 -Path slack : 492150p +Path Begin : \SPIM:BSPIM:BitCounter\/count_3 +Path End : \SPIM:BSPIM:state_2\/main_4 +Capture Clock : \SPIM:BSPIM:state_2\/clock_0 +Path slack : 491765p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3554,76 +4550,76 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4340 ++ Data path delay 4725 ------------------------------------- ---- -End-of-path arrival time (ps) 4340 +End-of-path arrival time (ps) 4725 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_1\/q macrocell20 1250 1250 486723 RISE 1 -\SPIM:BSPIM:cnt_enable\/main_1 macrocell9 3090 4340 492150 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:BitCounter\/count_3 count7cell 2110 2110 482985 RISE 1 +\SPIM:BSPIM:state_2\/main_4 macrocell22 2615 4725 491765 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:cnt_enable\/clock_0 macrocell9 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 -++++ Path 83 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 105 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_1\/q -Path End : \SPIM:BSPIM:state_1\/main_1 -Capture Clock : \SPIM:BSPIM:state_1\/clock_0 -Path slack : 492150p +Path Begin : \SPIM:BSPIM:cnt_enable\/q +Path End : \SPIM:BSPIM:BitCounter\/enable +Capture Clock : \SPIM:BSPIM:BitCounter\/clock +Path slack : 492008p Capture Clock Arrival Time 0 + Clock path delay 0 + Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 -- Setup time -3510 +- Setup time -3340 -------------------------------------------------------- ------ -End-of-path required time (ps) 496490 +End-of-path required time (ps) 496660 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4340 ++ Data path delay 4652 ------------------------------------- ---- -End-of-path arrival time (ps) 4340 +End-of-path arrival time (ps) 4652 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +\SPIM:BSPIM:cnt_enable\/clock_0 macrocell10 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ---------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_1\/q macrocell20 1250 1250 486723 RISE 1 -\SPIM:BSPIM:state_1\/main_1 macrocell20 3090 4340 492150 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------ ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:cnt_enable\/q macrocell10 1250 1250 492008 RISE 1 +\SPIM:BSPIM:BitCounter\/enable count7cell 3402 4652 492008 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 -++++ Path 84 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 106 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_1\/q -Path End : Net_439/main_1 -Capture Clock : Net_439/clock_0 -Path slack : 492151p +Path Begin : \SPIM:BSPIM:ld_ident\/q +Path End : \SPIM:BSPIM:mosi_pre_reg\/main_10 +Capture Clock : \SPIM:BSPIM:mosi_pre_reg\/clock_0 +Path slack : 492011p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3634,36 +4630,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4339 ++ Data path delay 4479 ------------------------------------- ---- -End-of-path arrival time (ps) 4339 +End-of-path arrival time (ps) 4479 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +\SPIM:BSPIM:ld_ident\/clock_0 macrocell13 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ----------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_1\/q macrocell20 1250 1250 486723 RISE 1 -Net_439/main_1 macrocell7 3089 4339 492151 RISE 1 +pin name model name delay AT slack edge Fanout +--------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:ld_ident\/q macrocell13 1250 1250 492011 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/main_10 macrocell18 3229 4479 492011 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -Net_439/clock_0 macrocell7 0 0 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell18 0 0 RISE 1 -++++ Path 85 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 107 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_1\/q -Path End : \SPIM:BSPIM:ld_ident\/main_1 -Capture Clock : \SPIM:BSPIM:ld_ident\/clock_0 -Path slack : 492151p +Path Begin : \SPIM:BSPIM:is_spi_done\/q +Path End : \SPIM:BSPIM:cnt_enable\/main_8 +Capture Clock : \SPIM:BSPIM:cnt_enable\/clock_0 +Path slack : 492033p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3674,76 +4670,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4339 -------------------------------------- ---- -End-of-path arrival time (ps) 4339 - -Launch Clock Path -pin name model name delay AT edge Fanout ---------------------------------------------------------- -------------- ----- ----- ---- ------ -ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 - -Data path -pin name model name delay AT slack edge Fanout ----------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_1\/q macrocell20 1250 1250 486723 RISE 1 -\SPIM:BSPIM:ld_ident\/main_1 macrocell12 3089 4339 492151 RISE 1 - -Capture Clock Path -pin name model name delay AT edge Fanout ---------------------------------------------------------- -------------- ----- ----- ---- ------ -ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:ld_ident\/clock_0 macrocell12 0 0 RISE 1 - - - -++++ Path 86 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - -Path Begin : \SPIM:BSPIM:cnt_enable\/q -Path End : \SPIM:BSPIM:BitCounter\/enable -Capture Clock : \SPIM:BSPIM:BitCounter\/clock -Path slack : 492188p - -Capture Clock Arrival Time 0 -+ Clock path delay 0 -+ Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 -- Setup time -3340 --------------------------------------------------------- ------ -End-of-path required time (ps) 496660 - -Launch Clock Arrival Time 0 -+ Clock path delay 0 -+ Data path delay 4472 ++ Data path delay 4457 ------------------------------------- ---- -End-of-path arrival time (ps) 4472 +End-of-path arrival time (ps) 4457 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:cnt_enable\/clock_0 macrocell9 0 0 RISE 1 +\SPIM:BSPIM:is_spi_done\/clock_0 macrocell12 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout ------------------------------ ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:cnt_enable\/q macrocell9 1250 1250 492188 RISE 1 -\SPIM:BSPIM:BitCounter\/enable count7cell 3222 4472 492188 RISE 1 +\SPIM:BSPIM:is_spi_done\/q macrocell12 1250 1250 492033 RISE 1 +\SPIM:BSPIM:cnt_enable\/main_8 macrocell10 3207 4457 492033 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:BitCounter\/clock count7cell 0 0 RISE 1 +\SPIM:BSPIM:cnt_enable\/clock_0 macrocell10 0 0 RISE 1 -++++ Path 87 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 108 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_1\/q -Path End : Net_479/main_2 -Capture Clock : Net_479/clock_0 -Path slack : 492292p +Path Begin : \SPIM:BSPIM:is_spi_done\/q +Path End : \SPIM:BSPIM:state_1\/main_9 +Capture Clock : \SPIM:BSPIM:state_1\/clock_0 +Path slack : 492033p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3754,36 +4710,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4198 ++ Data path delay 4457 ------------------------------------- ---- -End-of-path arrival time (ps) 4198 +End-of-path arrival time (ps) 4457 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +\SPIM:BSPIM:is_spi_done\/clock_0 macrocell12 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ----------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_1\/q macrocell20 1250 1250 486723 RISE 1 -Net_479/main_2 macrocell8 2948 4198 492292 RISE 1 +pin name model name delay AT slack edge Fanout +--------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:is_spi_done\/q macrocell12 1250 1250 492033 RISE 1 +\SPIM:BSPIM:state_1\/main_9 macrocell21 3207 4457 492033 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -Net_479/clock_0 macrocell8 0 0 RISE 1 +\SPIM:BSPIM:state_1\/clock_0 macrocell21 0 0 RISE 1 -++++ Path 88 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 109 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:state_1\/q -Path End : \SPIM:BSPIM:load_cond\/main_1 -Capture Clock : \SPIM:BSPIM:load_cond\/clock_0 -Path slack : 492292p +Path Begin : \SPIM:BSPIM:mosi_hs_reg\/q +Path End : \SPIM:BSPIM:mosi_hs_reg\/main_4 +Capture Clock : \SPIM:BSPIM:mosi_hs_reg\/clock_0 +Path slack : 492044p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3794,36 +4750,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4198 ++ Data path delay 4446 ------------------------------------- ---- -End-of-path arrival time (ps) 4198 +End-of-path arrival time (ps) 4446 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_1\/clock_0 macrocell20 0 0 RISE 1 +\SPIM:BSPIM:mosi_hs_reg\/clock_0 macrocell17 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ------------------------------ ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:state_1\/q macrocell20 1250 1250 486723 RISE 1 -\SPIM:BSPIM:load_cond\/main_1 macrocell13 2948 4198 492292 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:mosi_hs_reg\/q macrocell17 1250 1250 492044 RISE 1 +\SPIM:BSPIM:mosi_hs_reg\/main_4 macrocell17 3196 4446 492044 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:load_cond\/clock_0 macrocell13 0 0 RISE 1 +\SPIM:BSPIM:mosi_hs_reg\/clock_0 macrocell17 0 0 RISE 1 -++++ Path 89 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 110 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \SPIM:BSPIM:mosi_from_dp_reg\/q Path End : \SPIM:BSPIM:mosi_hs_reg\/main_5 Capture Clock : \SPIM:BSPIM:mosi_hs_reg\/clock_0 -Path slack : 492317p +Path slack : 492330p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3834,36 +4790,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4173 ++ Data path delay 4160 ------------------------------------- ---- -End-of-path arrival time (ps) 4173 +End-of-path arrival time (ps) 4160 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_from_dp_reg\/clock_0 macrocell15 0 0 RISE 1 +\SPIM:BSPIM:mosi_from_dp_reg\/clock_0 macrocell16 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:mosi_from_dp_reg\/q macrocell15 1250 1250 492317 RISE 1 -\SPIM:BSPIM:mosi_hs_reg\/main_5 macrocell16 2923 4173 492317 RISE 1 +\SPIM:BSPIM:mosi_from_dp_reg\/q macrocell16 1250 1250 492330 RISE 1 +\SPIM:BSPIM:mosi_hs_reg\/main_5 macrocell17 2910 4160 492330 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_hs_reg\/clock_0 macrocell16 0 0 RISE 1 +\SPIM:BSPIM:mosi_hs_reg\/clock_0 macrocell17 0 0 RISE 1 -++++ Path 90 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 111 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:ld_ident\/q -Path End : \SPIM:BSPIM:ld_ident\/main_3 -Capture Clock : \SPIM:BSPIM:ld_ident\/clock_0 -Path slack : 492613p +Path Begin : \SPIM:BSPIM:cnt_enable\/q +Path End : \SPIM:BSPIM:cnt_enable\/main_9 +Capture Clock : \SPIM:BSPIM:cnt_enable\/clock_0 +Path slack : 492602p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3874,31 +4830,31 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 3877 ++ Data path delay 3888 ------------------------------------- ---- -End-of-path arrival time (ps) 3877 +End-of-path arrival time (ps) 3888 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:ld_ident\/clock_0 macrocell12 0 0 RISE 1 +\SPIM:BSPIM:cnt_enable\/clock_0 macrocell10 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ----------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:ld_ident\/q macrocell12 1250 1250 491866 RISE 1 -\SPIM:BSPIM:ld_ident\/main_3 macrocell12 2627 3877 492613 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------------ ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:cnt_enable\/q macrocell10 1250 1250 492008 RISE 1 +\SPIM:BSPIM:cnt_enable\/main_9 macrocell10 2638 3888 492602 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:ld_ident\/clock_0 macrocell12 0 0 RISE 1 +\SPIM:BSPIM:cnt_enable\/clock_0 macrocell10 0 0 RISE 1 -++++ Path 91 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 112 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : Net_439/q Path End : Net_439/main_3 @@ -3938,12 +4894,12 @@ Net_439/clock_0 macrocell7 0 -++++ Path 92 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 113 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:mosi_pre_reg\/q -Path End : \SPIM:BSPIM:mosi_pre_reg\/main_9 -Capture Clock : \SPIM:BSPIM:mosi_pre_reg\/clock_0 -Path slack : 492919p +Path Begin : \SPIM:BSPIM:ld_ident\/q +Path End : \SPIM:BSPIM:ld_ident\/main_3 +Capture Clock : \SPIM:BSPIM:ld_ident\/clock_0 +Path slack : 492931p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3954,36 +4910,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 3571 ++ Data path delay 3559 ------------------------------------- ---- -End-of-path arrival time (ps) 3571 +End-of-path arrival time (ps) 3559 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell17 0 0 RISE 1 +\SPIM:BSPIM:ld_ident\/clock_0 macrocell13 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout --------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:mosi_pre_reg\/q macrocell17 1250 1250 492919 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/main_9 macrocell17 2321 3571 492919 RISE 1 +pin name model name delay AT slack edge Fanout +---------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:ld_ident\/q macrocell13 1250 1250 492011 RISE 1 +\SPIM:BSPIM:ld_ident\/main_3 macrocell13 2309 3559 492931 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell17 0 0 RISE 1 +\SPIM:BSPIM:ld_ident\/clock_0 macrocell13 0 0 RISE 1 -++++ Path 93 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 114 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \SPIM:BSPIM:is_spi_done\/q Path End : \SPIM:BSPIM:is_spi_done\/main_9 Capture Clock : \SPIM:BSPIM:is_spi_done\/clock_0 -Path slack : 492930p +Path slack : 492936p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -3994,36 +4950,36 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 3560 ++ Data path delay 3554 ------------------------------------- ---- -End-of-path arrival time (ps) 3560 +End-of-path arrival time (ps) 3554 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:is_spi_done\/clock_0 macrocell11 0 0 RISE 1 +\SPIM:BSPIM:is_spi_done\/clock_0 macrocell12 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:is_spi_done\/q macrocell11 1250 1250 492007 RISE 1 -\SPIM:BSPIM:is_spi_done\/main_9 macrocell11 2310 3560 492930 RISE 1 +\SPIM:BSPIM:is_spi_done\/q macrocell12 1250 1250 492033 RISE 1 +\SPIM:BSPIM:is_spi_done\/main_9 macrocell12 2304 3554 492936 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:is_spi_done\/clock_0 macrocell11 0 0 RISE 1 +\SPIM:BSPIM:is_spi_done\/clock_0 macrocell12 0 0 RISE 1 -++++ Path 94 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 115 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \SPIM:BSPIM:is_spi_done\/q Path End : \SPIM:BSPIM:state_2\/main_9 Capture Clock : \SPIM:BSPIM:state_2\/clock_0 -Path slack : 492930p +Path slack : 492936p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4034,35 +4990,75 @@ End-of-path required time (ps) 496490 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 3560 ++ Data path delay 3554 ------------------------------------- ---- -End-of-path arrival time (ps) 3560 +End-of-path arrival time (ps) 3554 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:is_spi_done\/clock_0 macrocell11 0 0 RISE 1 +\SPIM:BSPIM:is_spi_done\/clock_0 macrocell12 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout --------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:is_spi_done\/q macrocell11 1250 1250 492007 RISE 1 -\SPIM:BSPIM:state_2\/main_9 macrocell21 2310 3560 492930 RISE 1 +\SPIM:BSPIM:is_spi_done\/q macrocell12 1250 1250 492033 RISE 1 +\SPIM:BSPIM:state_2\/main_9 macrocell22 2304 3554 492936 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:state_2\/clock_0 macrocell21 0 0 RISE 1 +\SPIM:BSPIM:state_2\/clock_0 macrocell22 0 0 RISE 1 -++++ Path 95 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 116 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \SPIM:BSPIM:cnt_enable\/q -Path End : \SPIM:BSPIM:cnt_enable\/main_9 -Capture Clock : \SPIM:BSPIM:cnt_enable\/clock_0 +Path Begin : \SPIM:BSPIM:load_cond\/q +Path End : \SPIM:BSPIM:load_cond\/main_8 +Capture Clock : \SPIM:BSPIM:load_cond\/clock_0 +Path slack : 492943p + +Capture Clock Arrival Time 0 ++ Clock path delay 0 ++ Cycle adjust (SPIM_IntClock:R#1 vs. SPIM_IntClock:R#2) 500000 +- Setup time -3510 +-------------------------------------------------------- ------ +End-of-path required time (ps) 496490 + +Launch Clock Arrival Time 0 ++ Clock path delay 0 ++ Data path delay 3547 +------------------------------------- ---- +End-of-path arrival time (ps) 3547 + +Launch Clock Path +pin name model name delay AT edge Fanout +--------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 +\SPIM:BSPIM:load_cond\/clock_0 macrocell14 0 0 RISE 1 + +Data path +pin name model name delay AT slack edge Fanout +----------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:load_cond\/q macrocell14 1250 1250 492943 RISE 1 +\SPIM:BSPIM:load_cond\/main_8 macrocell14 2297 3547 492943 RISE 1 + +Capture Clock Path +pin name model name delay AT edge Fanout +--------------------------------------------------------- -------------- ----- ----- ---- ------ +ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 +\SPIM:BSPIM:load_cond\/clock_0 macrocell14 0 0 RISE 1 + + + +++++ Path 117 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +Path Begin : \SPIM:BSPIM:mosi_pre_reg\/q +Path End : \SPIM:BSPIM:mosi_pre_reg\/main_9 +Capture Clock : \SPIM:BSPIM:mosi_pre_reg\/clock_0 Path slack : 492951p Capture Clock Arrival Time 0 @@ -4082,28 +5078,28 @@ Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:cnt_enable\/clock_0 macrocell9 0 0 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell18 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ------------------------------- ----------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:cnt_enable\/q macrocell9 1250 1250 492188 RISE 1 -\SPIM:BSPIM:cnt_enable\/main_9 macrocell9 2289 3539 492951 RISE 1 +pin name model name delay AT slack edge Fanout +-------------------------------- ----------- ----- ----- ------ ---- ------ +\SPIM:BSPIM:mosi_pre_reg\/q macrocell18 1250 1250 492951 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/main_9 macrocell18 2289 3539 492951 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:cnt_enable\/clock_0 macrocell9 0 0 RISE 1 +\SPIM:BSPIM:mosi_pre_reg\/clock_0 macrocell18 0 0 RISE 1 -++++ Path 96 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 118 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \SPIM:BSPIM:load_rx_data\/q Path End : \SPIM:BSPIM:sR8:Dp:u0\/f1_load Capture Clock : \SPIM:BSPIM:sR8:Dp:u0\/clock -Path slack : 493987p +Path slack : 494004p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4114,21 +5110,21 @@ End-of-path required time (ps) 498150 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4163 ++ Data path delay 4146 ------------------------------------- ---- -End-of-path arrival time (ps) 4163 +End-of-path arrival time (ps) 4146 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_0 clockblockcell 0 0 RISE 1 -\SPIM:BSPIM:load_rx_data\/clock_0 macrocell14 0 0 RISE 1 +\SPIM:BSPIM:load_rx_data\/clock_0 macrocell15 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout ------------------------------ ------------- ----- ----- ------ ---- ------ -\SPIM:BSPIM:load_rx_data\/q macrocell14 1250 1250 493987 RISE 1 -\SPIM:BSPIM:sR8:Dp:u0\/f1_load datapathcell1 2913 4163 493987 RISE 1 +\SPIM:BSPIM:load_rx_data\/q macrocell15 1250 1250 494004 RISE 1 +\SPIM:BSPIM:sR8:Dp:u0\/f1_load datapathcell1 2896 4146 494004 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout @@ -4138,12 +5134,12 @@ ClockBlock/dclk_glb_0 clockblockcell 0 -++++ Path 97 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 119 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \UART_1:BUART:tx_state_0\/q +Path Begin : \UART_1:BUART:tx_state_1\/q Path End : \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_0 Capture Clock : \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/clock -Path slack : 1060528p +Path slack : 1059785p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4154,38 +5150,38 @@ End-of-path required time (ps) 1071813 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 11285 ++ Data path delay 12028 ------------------------------------- ----- -End-of-path arrival time (ps) 11285 +End-of-path arrival time (ps) 12028 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_0\/clock_0 macrocell27 0 0 RISE 1 +\UART_1:BUART:tx_state_1\/clock_0 macrocell33 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout ----------------------------------------------- ------------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_state_0\/q macrocell27 1250 1250 1060528 RISE 1 -\UART_1:BUART:counter_load_not\/main_1 macrocell24 4383 5633 1060528 RISE 1 -\UART_1:BUART:counter_load_not\/q macrocell24 3350 8983 1060528 RISE 1 -\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_0 datapathcell3 2302 11285 1060528 RISE 1 +\UART_1:BUART:tx_state_1\/q macrocell33 1250 1250 1059785 RISE 1 +\UART_1:BUART:counter_load_not\/main_0 macrocell29 5136 6386 1059785 RISE 1 +\UART_1:BUART:counter_load_not\/q macrocell29 3350 9736 1059785 RISE 1 +\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_0 datapathcell5 2292 12028 1059785 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/clock datapathcell3 0 0 RISE 1 +\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/clock datapathcell5 0 0 RISE 1 -++++ Path 98 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 120 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cl0_comb Path End : \UART_1:BUART:sTX:TxShifter:u0\/cs_addr_0 Capture Clock : \UART_1:BUART:sTX:TxShifter:u0\/clock -Path slack : 1063403p +Path slack : 1063406p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4196,38 +5192,38 @@ End-of-path required time (ps) 1077043 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 13640 ++ Data path delay 13638 ------------------------------------- ----- -End-of-path arrival time (ps) 13640 +End-of-path arrival time (ps) 13638 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/clock datapathcell3 0 0 RISE 1 +\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/clock datapathcell5 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout ---------------------------------------------- ------------- ----- ----- ------- ---- ------ -\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cl0_comb datapathcell3 5680 5680 1063403 RISE 1 -\UART_1:BUART:tx_bitclk_enable_pre\/main_0 macrocell26 2290 7970 1063403 RISE 1 -\UART_1:BUART:tx_bitclk_enable_pre\/q macrocell26 3350 11320 1063403 RISE 1 -\UART_1:BUART:sTX:TxShifter:u0\/cs_addr_0 datapathcell2 2320 13640 1063403 RISE 1 +\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cl0_comb datapathcell5 5680 5680 1063406 RISE 1 +\UART_1:BUART:tx_bitclk_enable_pre\/main_0 macrocell31 2301 7981 1063406 RISE 1 +\UART_1:BUART:tx_bitclk_enable_pre\/q macrocell31 3350 11331 1063406 RISE 1 +\UART_1:BUART:sTX:TxShifter:u0\/cs_addr_0 datapathcell4 2307 13638 1063406 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:sTX:TxShifter:u0\/clock datapathcell2 0 0 RISE 1 +\UART_1:BUART:sTX:TxShifter:u0\/clock datapathcell4 0 0 RISE 1 -++++ Path 99 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 121 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \UART_1:BUART:sTX:TxShifter:u0\/f0_blk_stat_comb Path End : \UART_1:BUART:sTX:TxSts\/status_0 Capture Clock : \UART_1:BUART:sTX:TxSts\/clock -Path slack : 1067003p +Path slack : 1067180p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4238,38 +5234,38 @@ End-of-path required time (ps) 1081763 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 14760 ++ Data path delay 14583 ------------------------------------- ----- -End-of-path arrival time (ps) 14760 +End-of-path arrival time (ps) 14583 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:sTX:TxShifter:u0\/clock datapathcell2 0 0 RISE 1 +\UART_1:BUART:sTX:TxShifter:u0\/clock datapathcell4 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout ------------------------------------------------ ------------- ----- ----- ------- ---- ------ -\UART_1:BUART:sTX:TxShifter:u0\/f0_blk_stat_comb datapathcell2 5280 5280 1067003 RISE 1 -\UART_1:BUART:tx_status_0\/main_2 macrocell30 3228 8508 1067003 RISE 1 -\UART_1:BUART:tx_status_0\/q macrocell30 3350 11858 1067003 RISE 1 -\UART_1:BUART:sTX:TxSts\/status_0 statusicell3 2902 14760 1067003 RISE 1 +\UART_1:BUART:sTX:TxShifter:u0\/f0_blk_stat_comb datapathcell4 5280 5280 1067180 RISE 1 +\UART_1:BUART:tx_status_0\/main_2 macrocell35 3638 8918 1067180 RISE 1 +\UART_1:BUART:tx_status_0\/q macrocell35 3350 12268 1067180 RISE 1 +\UART_1:BUART:sTX:TxSts\/status_0 statusicell4 2314 14583 1067180 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:sTX:TxSts\/clock statusicell3 0 0 RISE 1 +\UART_1:BUART:sTX:TxSts\/clock statusicell4 0 0 RISE 1 -++++ Path 100 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 122 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \UART_1:BUART:sTX:TxShifter:u0\/so_comb Path End : \UART_1:BUART:txn\/main_3 Capture Clock : \UART_1:BUART:txn\/clock_0 -Path slack : 1070235p +Path slack : 1070231p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4280,36 +5276,36 @@ End-of-path required time (ps) 1079823 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 9588 ++ Data path delay 9592 ------------------------------------- ---- -End-of-path arrival time (ps) 9588 +End-of-path arrival time (ps) 9592 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:sTX:TxShifter:u0\/clock datapathcell2 0 0 RISE 1 +\UART_1:BUART:sTX:TxShifter:u0\/clock datapathcell4 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout --------------------------------------- ------------- ----- ----- ------- ---- ------ -\UART_1:BUART:sTX:TxShifter:u0\/so_comb datapathcell2 7280 7280 1070235 RISE 1 -\UART_1:BUART:txn\/main_3 macrocell32 2308 9588 1070235 RISE 1 +\UART_1:BUART:sTX:TxShifter:u0\/so_comb datapathcell4 7280 7280 1070231 RISE 1 +\UART_1:BUART:txn\/main_3 macrocell37 2312 9592 1070231 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:txn\/clock_0 macrocell32 0 0 RISE 1 +\UART_1:BUART:txn\/clock_0 macrocell37 0 0 RISE 1 -++++ Path 101 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 123 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \UART_1:BUART:tx_state_0\/q -Path End : \UART_1:BUART:sTX:TxShifter:u0\/cs_addr_1 +Path Begin : \UART_1:BUART:tx_state_1\/q +Path End : \UART_1:BUART:sTX:TxShifter:u0\/cs_addr_2 Capture Clock : \UART_1:BUART:sTX:TxShifter:u0\/clock -Path slack : 1070727p +Path slack : 1070649p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4320,36 +5316,36 @@ End-of-path required time (ps) 1077043 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 6316 ++ Data path delay 6394 ------------------------------------- ---- -End-of-path arrival time (ps) 6316 +End-of-path arrival time (ps) 6394 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_0\/clock_0 macrocell27 0 0 RISE 1 +\UART_1:BUART:tx_state_1\/clock_0 macrocell33 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout ----------------------------------------- ------------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_state_0\/q macrocell27 1250 1250 1060528 RISE 1 -\UART_1:BUART:sTX:TxShifter:u0\/cs_addr_1 datapathcell2 5066 6316 1070727 RISE 1 +\UART_1:BUART:tx_state_1\/q macrocell33 1250 1250 1059785 RISE 1 +\UART_1:BUART:sTX:TxShifter:u0\/cs_addr_2 datapathcell4 5144 6394 1070649 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:sTX:TxShifter:u0\/clock datapathcell2 0 0 RISE 1 +\UART_1:BUART:sTX:TxShifter:u0\/clock datapathcell4 0 0 RISE 1 -++++ Path 102 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 124 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \UART_1:BUART:sTX:TxShifter:u0\/f0_blk_stat_comb Path End : \UART_1:BUART:tx_state_0\/main_2 Capture Clock : \UART_1:BUART:tx_state_0\/clock_0 -Path slack : 1071316p +Path slack : 1070905p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4360,116 +5356,116 @@ End-of-path required time (ps) 1079823 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 8508 ++ Data path delay 8918 ------------------------------------- ---- -End-of-path arrival time (ps) 8508 +End-of-path arrival time (ps) 8918 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:sTX:TxShifter:u0\/clock datapathcell2 0 0 RISE 1 +\UART_1:BUART:sTX:TxShifter:u0\/clock datapathcell4 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout ------------------------------------------------ ------------- ----- ----- ------- ---- ------ -\UART_1:BUART:sTX:TxShifter:u0\/f0_blk_stat_comb datapathcell2 5280 5280 1067003 RISE 1 -\UART_1:BUART:tx_state_0\/main_2 macrocell27 3228 8508 1071316 RISE 1 +\UART_1:BUART:sTX:TxShifter:u0\/f0_blk_stat_comb datapathcell4 5280 5280 1067180 RISE 1 +\UART_1:BUART:tx_state_0\/main_2 macrocell32 3638 8918 1070905 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_0\/clock_0 macrocell27 0 0 RISE 1 +\UART_1:BUART:tx_state_0\/clock_0 macrocell32 0 0 RISE 1 -++++ Path 103 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 125 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cl0_comb -Path End : \UART_1:BUART:tx_bitclk\/main_0 -Capture Clock : \UART_1:BUART:tx_bitclk\/clock_0 -Path slack : 1071854p +Path Begin : \UART_1:BUART:tx_state_0\/q +Path End : \UART_1:BUART:sTX:TxShifter:u0\/cs_addr_1 +Capture Clock : \UART_1:BUART:sTX:TxShifter:u0\/clock +Path slack : 1070921p Capture Clock Arrival Time 0 + Clock path delay 0 + Cycle adjust (Clock_1:R#1 vs. Clock_1:R#2) 1083333 -- Setup time -3510 +- Setup time -6290 -------------------------------------------- ------- -End-of-path required time (ps) 1079823 +End-of-path required time (ps) 1077043 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 7970 ++ Data path delay 6122 ------------------------------------- ---- -End-of-path arrival time (ps) 7970 +End-of-path arrival time (ps) 6122 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/clock datapathcell3 0 0 RISE 1 +\UART_1:BUART:tx_state_0\/clock_0 macrocell32 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ----------------------------------------------- ------------- ----- ----- ------- ---- ------ -\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cl0_comb datapathcell3 5680 5680 1063403 RISE 1 -\UART_1:BUART:tx_bitclk\/main_0 macrocell25 2290 7970 1071854 RISE 1 +pin name model name delay AT slack edge Fanout +----------------------------------------- ------------- ----- ----- ------- ---- ------ +\UART_1:BUART:tx_state_0\/q macrocell32 1250 1250 1060627 RISE 1 +\UART_1:BUART:sTX:TxShifter:u0\/cs_addr_1 datapathcell4 4872 6122 1070921 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_bitclk\/clock_0 macrocell25 0 0 RISE 1 +\UART_1:BUART:sTX:TxShifter:u0\/clock datapathcell4 0 0 RISE 1 -++++ Path 104 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 126 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \UART_1:BUART:tx_state_1\/q -Path End : \UART_1:BUART:sTX:TxShifter:u0\/cs_addr_2 -Capture Clock : \UART_1:BUART:sTX:TxShifter:u0\/clock -Path slack : 1072006p +Path Begin : \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cl0_comb +Path End : \UART_1:BUART:tx_bitclk\/main_0 +Capture Clock : \UART_1:BUART:tx_bitclk\/clock_0 +Path slack : 1071842p Capture Clock Arrival Time 0 + Clock path delay 0 + Cycle adjust (Clock_1:R#1 vs. Clock_1:R#2) 1083333 -- Setup time -6290 +- Setup time -3510 -------------------------------------------- ------- -End-of-path required time (ps) 1077043 +End-of-path required time (ps) 1079823 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5038 ++ Data path delay 7981 ------------------------------------- ---- -End-of-path arrival time (ps) 5038 +End-of-path arrival time (ps) 7981 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_1\/clock_0 macrocell28 0 0 RISE 1 +\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/clock datapathcell5 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ------------------------------------------ ------------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_state_1\/q macrocell28 1250 1250 1061125 RISE 1 -\UART_1:BUART:sTX:TxShifter:u0\/cs_addr_2 datapathcell2 3788 5038 1072006 RISE 1 +pin name model name delay AT slack edge Fanout +---------------------------------------------- ------------- ----- ----- ------- ---- ------ +\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cl0_comb datapathcell5 5680 5680 1063406 RISE 1 +\UART_1:BUART:tx_bitclk\/main_0 macrocell30 2301 7981 1071842 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:sTX:TxShifter:u0\/clock datapathcell2 0 0 RISE 1 +\UART_1:BUART:tx_bitclk\/clock_0 macrocell30 0 0 RISE 1 -++++ Path 105 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 127 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \UART_1:BUART:tx_state_0\/q -Path End : \UART_1:BUART:tx_state_2\/main_1 -Capture Clock : \UART_1:BUART:tx_state_2\/clock_0 -Path slack : 1073497p +Path End : \UART_1:BUART:tx_state_1\/main_1 +Capture Clock : \UART_1:BUART:tx_state_1\/clock_0 +Path slack : 1072326p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4480,36 +5476,36 @@ End-of-path required time (ps) 1079823 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 6326 ++ Data path delay 7498 ------------------------------------- ---- -End-of-path arrival time (ps) 6326 +End-of-path arrival time (ps) 7498 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_0\/clock_0 macrocell27 0 0 RISE 1 +\UART_1:BUART:tx_state_0\/clock_0 macrocell32 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_state_0\/q macrocell27 1250 1250 1060528 RISE 1 -\UART_1:BUART:tx_state_2\/main_1 macrocell29 5076 6326 1073497 RISE 1 +\UART_1:BUART:tx_state_0\/q macrocell32 1250 1250 1060627 RISE 1 +\UART_1:BUART:tx_state_1\/main_1 macrocell33 6248 7498 1072326 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_2\/clock_0 macrocell29 0 0 RISE 1 +\UART_1:BUART:tx_state_1\/clock_0 macrocell33 0 0 RISE 1 -++++ Path 106 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 128 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \UART_1:BUART:tx_state_0\/q -Path End : \UART_1:BUART:txn\/main_2 -Capture Clock : \UART_1:BUART:txn\/clock_0 -Path slack : 1073497p +Path Begin : \UART_1:BUART:tx_bitclk\/q +Path End : \UART_1:BUART:tx_state_1\/main_3 +Capture Clock : \UART_1:BUART:tx_state_1\/clock_0 +Path slack : 1073098p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4520,36 +5516,36 @@ End-of-path required time (ps) 1079823 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 6326 ++ Data path delay 6726 ------------------------------------- ---- -End-of-path arrival time (ps) 6326 +End-of-path arrival time (ps) 6726 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_0\/clock_0 macrocell27 0 0 RISE 1 +\UART_1:BUART:tx_bitclk\/clock_0 macrocell30 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ---------------------------- ----------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_state_0\/q macrocell27 1250 1250 1060528 RISE 1 -\UART_1:BUART:txn\/main_2 macrocell32 5076 6326 1073497 RISE 1 +pin name model name delay AT slack edge Fanout +-------------------------------- ----------- ----- ----- ------- ---- ------ +\UART_1:BUART:tx_bitclk\/q macrocell30 1250 1250 1061821 RISE 1 +\UART_1:BUART:tx_state_1\/main_3 macrocell33 5476 6726 1073098 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:txn\/clock_0 macrocell32 0 0 RISE 1 +\UART_1:BUART:tx_state_1\/clock_0 macrocell33 0 0 RISE 1 -++++ Path 107 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 129 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \UART_1:BUART:tx_state_0\/q -Path End : \UART_1:BUART:tx_state_0\/main_1 -Capture Clock : \UART_1:BUART:tx_state_0\/clock_0 -Path slack : 1074765p +Path Begin : \UART_1:BUART:tx_state_2\/q +Path End : \UART_1:BUART:tx_state_1\/main_2 +Capture Clock : \UART_1:BUART:tx_state_1\/clock_0 +Path slack : 1073140p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4560,36 +5556,36 @@ End-of-path required time (ps) 1079823 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5058 ++ Data path delay 6684 ------------------------------------- ---- -End-of-path arrival time (ps) 5058 +End-of-path arrival time (ps) 6684 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_0\/clock_0 macrocell27 0 0 RISE 1 +\UART_1:BUART:tx_state_2\/clock_0 macrocell34 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_state_0\/q macrocell27 1250 1250 1060528 RISE 1 -\UART_1:BUART:tx_state_0\/main_1 macrocell27 3808 5058 1074765 RISE 1 +\UART_1:BUART:tx_state_2\/q macrocell34 1250 1250 1061861 RISE 1 +\UART_1:BUART:tx_state_1\/main_2 macrocell33 5434 6684 1073140 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_0\/clock_0 macrocell27 0 0 RISE 1 +\UART_1:BUART:tx_state_1\/clock_0 macrocell33 0 0 RISE 1 -++++ Path 108 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 130 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \UART_1:BUART:tx_state_0\/q -Path End : \UART_1:BUART:tx_state_1\/main_1 -Capture Clock : \UART_1:BUART:tx_state_1\/clock_0 -Path slack : 1074765p +Path Begin : \UART_1:BUART:tx_state_1\/q +Path End : \UART_1:BUART:tx_state_0\/main_0 +Capture Clock : \UART_1:BUART:tx_state_0\/clock_0 +Path slack : 1073463p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4600,36 +5596,36 @@ End-of-path required time (ps) 1079823 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5058 ++ Data path delay 6360 ------------------------------------- ---- -End-of-path arrival time (ps) 5058 +End-of-path arrival time (ps) 6360 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_0\/clock_0 macrocell27 0 0 RISE 1 +\UART_1:BUART:tx_state_1\/clock_0 macrocell33 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_state_0\/q macrocell27 1250 1250 1060528 RISE 1 -\UART_1:BUART:tx_state_1\/main_1 macrocell28 3808 5058 1074765 RISE 1 +\UART_1:BUART:tx_state_1\/q macrocell33 1250 1250 1059785 RISE 1 +\UART_1:BUART:tx_state_0\/main_0 macrocell32 5110 6360 1073463 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_1\/clock_0 macrocell28 0 0 RISE 1 +\UART_1:BUART:tx_state_0\/clock_0 macrocell32 0 0 RISE 1 -++++ Path 109 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 131 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \UART_1:BUART:tx_state_1\/q -Path End : \UART_1:BUART:tx_state_0\/main_0 -Capture Clock : \UART_1:BUART:tx_state_0\/clock_0 -Path slack : 1074800p +Path End : \UART_1:BUART:tx_state_2\/main_0 +Capture Clock : \UART_1:BUART:tx_state_2\/clock_0 +Path slack : 1073465p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4640,36 +5636,36 @@ End-of-path required time (ps) 1079823 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5023 ++ Data path delay 6359 ------------------------------------- ---- -End-of-path arrival time (ps) 5023 +End-of-path arrival time (ps) 6359 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_1\/clock_0 macrocell28 0 0 RISE 1 +\UART_1:BUART:tx_state_1\/clock_0 macrocell33 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_state_1\/q macrocell28 1250 1250 1061125 RISE 1 -\UART_1:BUART:tx_state_0\/main_0 macrocell27 3773 5023 1074800 RISE 1 +\UART_1:BUART:tx_state_1\/q macrocell33 1250 1250 1059785 RISE 1 +\UART_1:BUART:tx_state_2\/main_0 macrocell34 5109 6359 1073465 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_0\/clock_0 macrocell27 0 0 RISE 1 +\UART_1:BUART:tx_state_2\/clock_0 macrocell34 0 0 RISE 1 -++++ Path 110 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 132 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \UART_1:BUART:tx_state_1\/q -Path End : \UART_1:BUART:tx_state_1\/main_0 -Capture Clock : \UART_1:BUART:tx_state_1\/clock_0 -Path slack : 1074800p +Path End : \UART_1:BUART:txn\/main_1 +Capture Clock : \UART_1:BUART:txn\/clock_0 +Path slack : 1073465p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4680,36 +5676,36 @@ End-of-path required time (ps) 1079823 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5023 ++ Data path delay 6359 ------------------------------------- ---- -End-of-path arrival time (ps) 5023 +End-of-path arrival time (ps) 6359 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_1\/clock_0 macrocell28 0 0 RISE 1 +\UART_1:BUART:tx_state_1\/clock_0 macrocell33 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout --------------------------------- ----------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_state_1\/q macrocell28 1250 1250 1061125 RISE 1 -\UART_1:BUART:tx_state_1\/main_0 macrocell28 3773 5023 1074800 RISE 1 +pin name model name delay AT slack edge Fanout +--------------------------- ----------- ----- ----- ------- ---- ------ +\UART_1:BUART:tx_state_1\/q macrocell33 1250 1250 1059785 RISE 1 +\UART_1:BUART:txn\/main_1 macrocell37 5109 6359 1073465 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_1\/clock_0 macrocell28 0 0 RISE 1 +\UART_1:BUART:txn\/clock_0 macrocell37 0 0 RISE 1 -++++ Path 111 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 133 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \UART_1:BUART:tx_state_1\/q -Path End : \UART_1:BUART:tx_state_2\/main_0 -Capture Clock : \UART_1:BUART:tx_state_2\/clock_0 -Path slack : 1074813p +Path Begin : \UART_1:BUART:tx_state_0\/q +Path End : \UART_1:BUART:tx_state_0\/main_1 +Capture Clock : \UART_1:BUART:tx_state_0\/clock_0 +Path slack : 1074975p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4720,36 +5716,36 @@ End-of-path required time (ps) 1079823 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5010 ++ Data path delay 4849 ------------------------------------- ---- -End-of-path arrival time (ps) 5010 +End-of-path arrival time (ps) 4849 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_1\/clock_0 macrocell28 0 0 RISE 1 +\UART_1:BUART:tx_state_0\/clock_0 macrocell32 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_state_1\/q macrocell28 1250 1250 1061125 RISE 1 -\UART_1:BUART:tx_state_2\/main_0 macrocell29 3760 5010 1074813 RISE 1 +\UART_1:BUART:tx_state_0\/q macrocell32 1250 1250 1060627 RISE 1 +\UART_1:BUART:tx_state_0\/main_1 macrocell32 3599 4849 1074975 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_2\/clock_0 macrocell29 0 0 RISE 1 +\UART_1:BUART:tx_state_0\/clock_0 macrocell32 0 0 RISE 1 -++++ Path 112 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 134 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \UART_1:BUART:tx_state_1\/q -Path End : \UART_1:BUART:txn\/main_1 -Capture Clock : \UART_1:BUART:txn\/clock_0 -Path slack : 1074813p +Path Begin : \UART_1:BUART:tx_state_0\/q +Path End : \UART_1:BUART:tx_state_2\/main_1 +Capture Clock : \UART_1:BUART:tx_state_2\/clock_0 +Path slack : 1074977p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4760,36 +5756,36 @@ End-of-path required time (ps) 1079823 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 5010 ++ Data path delay 4847 ------------------------------------- ---- -End-of-path arrival time (ps) 5010 +End-of-path arrival time (ps) 4847 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_1\/clock_0 macrocell28 0 0 RISE 1 +\UART_1:BUART:tx_state_0\/clock_0 macrocell32 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ---------------------------- ----------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_state_1\/q macrocell28 1250 1250 1061125 RISE 1 -\UART_1:BUART:txn\/main_1 macrocell32 3760 5010 1074813 RISE 1 +pin name model name delay AT slack edge Fanout +-------------------------------- ----------- ----- ----- ------- ---- ------ +\UART_1:BUART:tx_state_0\/q macrocell32 1250 1250 1060627 RISE 1 +\UART_1:BUART:tx_state_2\/main_1 macrocell34 3597 4847 1074977 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:txn\/clock_0 macrocell32 0 0 RISE 1 +\UART_1:BUART:tx_state_2\/clock_0 macrocell34 0 0 RISE 1 -++++ Path 113 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 135 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \UART_1:BUART:txn\/q -Path End : \UART_1:BUART:txn\/main_0 +Path Begin : \UART_1:BUART:tx_state_0\/q +Path End : \UART_1:BUART:txn\/main_2 Capture Clock : \UART_1:BUART:txn\/clock_0 -Path slack : 1075397p +Path slack : 1074977p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4800,36 +5796,36 @@ End-of-path required time (ps) 1079823 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4426 ++ Data path delay 4847 ------------------------------------- ---- -End-of-path arrival time (ps) 4426 +End-of-path arrival time (ps) 4847 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:txn\/clock_0 macrocell32 0 0 RISE 1 +\UART_1:BUART:tx_state_0\/clock_0 macrocell32 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout -------------------------- ----------- ----- ----- ------- ---- ------ -\UART_1:BUART:txn\/q macrocell32 1250 1250 1075397 RISE 1 -\UART_1:BUART:txn\/main_0 macrocell32 3176 4426 1075397 RISE 1 +pin name model name delay AT slack edge Fanout +--------------------------- ----------- ----- ----- ------- ---- ------ +\UART_1:BUART:tx_state_0\/q macrocell32 1250 1250 1060627 RISE 1 +\UART_1:BUART:txn\/main_2 macrocell37 3597 4847 1074977 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:txn\/clock_0 macrocell32 0 0 RISE 1 +\UART_1:BUART:txn\/clock_0 macrocell37 0 0 RISE 1 -++++ Path 114 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 136 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Path Begin : \UART_1:BUART:tx_bitclk\/q Path End : \UART_1:BUART:tx_state_0\/main_4 Capture Clock : \UART_1:BUART:tx_state_0\/clock_0 -Path slack : 1075478p +Path slack : 1075470p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4840,36 +5836,36 @@ End-of-path required time (ps) 1079823 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4346 ++ Data path delay 4354 ------------------------------------- ---- -End-of-path arrival time (ps) 4346 +End-of-path arrival time (ps) 4354 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_bitclk\/clock_0 macrocell25 0 0 RISE 1 +\UART_1:BUART:tx_bitclk\/clock_0 macrocell30 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_bitclk\/q macrocell25 1250 1250 1061814 RISE 1 -\UART_1:BUART:tx_state_0\/main_4 macrocell27 3096 4346 1075478 RISE 1 +\UART_1:BUART:tx_bitclk\/q macrocell30 1250 1250 1061821 RISE 1 +\UART_1:BUART:tx_state_0\/main_4 macrocell32 3104 4354 1075470 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_0\/clock_0 macrocell27 0 0 RISE 1 +\UART_1:BUART:tx_state_0\/clock_0 macrocell32 0 0 RISE 1 -++++ Path 115 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 137 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \UART_1:BUART:tx_bitclk\/q -Path End : \UART_1:BUART:tx_state_1\/main_3 -Capture Clock : \UART_1:BUART:tx_state_1\/clock_0 -Path slack : 1075478p +Path Begin : \UART_1:BUART:tx_state_2\/q +Path End : \UART_1:BUART:tx_state_0\/main_3 +Capture Clock : \UART_1:BUART:tx_state_0\/clock_0 +Path slack : 1075511p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4880,36 +5876,36 @@ End-of-path required time (ps) 1079823 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4346 ++ Data path delay 4312 ------------------------------------- ---- -End-of-path arrival time (ps) 4346 +End-of-path arrival time (ps) 4312 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_bitclk\/clock_0 macrocell25 0 0 RISE 1 +\UART_1:BUART:tx_state_2\/clock_0 macrocell34 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_bitclk\/q macrocell25 1250 1250 1061814 RISE 1 -\UART_1:BUART:tx_state_1\/main_3 macrocell28 3096 4346 1075478 RISE 1 +\UART_1:BUART:tx_state_2\/q macrocell34 1250 1250 1061861 RISE 1 +\UART_1:BUART:tx_state_0\/main_3 macrocell32 3062 4312 1075511 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_1\/clock_0 macrocell28 0 0 RISE 1 +\UART_1:BUART:tx_state_0\/clock_0 macrocell32 0 0 RISE 1 -++++ Path 116 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 138 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \UART_1:BUART:tx_state_2\/q -Path End : \UART_1:BUART:tx_state_0\/main_3 -Capture Clock : \UART_1:BUART:tx_state_0\/clock_0 -Path slack : 1075508p +Path Begin : \UART_1:BUART:tx_bitclk\/q +Path End : \UART_1:BUART:tx_state_2\/main_3 +Capture Clock : \UART_1:BUART:tx_state_2\/clock_0 +Path slack : 1075605p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4920,36 +5916,36 @@ End-of-path required time (ps) 1079823 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4316 ++ Data path delay 4218 ------------------------------------- ---- -End-of-path arrival time (ps) 4316 +End-of-path arrival time (ps) 4218 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_2\/clock_0 macrocell29 0 0 RISE 1 +\UART_1:BUART:tx_bitclk\/clock_0 macrocell30 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_state_2\/q macrocell29 1250 1250 1061848 RISE 1 -\UART_1:BUART:tx_state_0\/main_3 macrocell27 3066 4316 1075508 RISE 1 +\UART_1:BUART:tx_bitclk\/q macrocell30 1250 1250 1061821 RISE 1 +\UART_1:BUART:tx_state_2\/main_3 macrocell34 2968 4218 1075605 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_0\/clock_0 macrocell27 0 0 RISE 1 +\UART_1:BUART:tx_state_2\/clock_0 macrocell34 0 0 RISE 1 -++++ Path 117 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 139 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \UART_1:BUART:tx_state_2\/q -Path End : \UART_1:BUART:tx_state_1\/main_2 -Capture Clock : \UART_1:BUART:tx_state_1\/clock_0 -Path slack : 1075508p +Path Begin : \UART_1:BUART:tx_bitclk\/q +Path End : \UART_1:BUART:txn\/main_5 +Capture Clock : \UART_1:BUART:txn\/clock_0 +Path slack : 1075605p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -4960,36 +5956,36 @@ End-of-path required time (ps) 1079823 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4316 ++ Data path delay 4218 ------------------------------------- ---- -End-of-path arrival time (ps) 4316 +End-of-path arrival time (ps) 4218 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_2\/clock_0 macrocell29 0 0 RISE 1 +\UART_1:BUART:tx_bitclk\/clock_0 macrocell30 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout --------------------------------- ----------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_state_2\/q macrocell29 1250 1250 1061848 RISE 1 -\UART_1:BUART:tx_state_1\/main_2 macrocell28 3066 4316 1075508 RISE 1 +pin name model name delay AT slack edge Fanout +-------------------------- ----------- ----- ----- ------- ---- ------ +\UART_1:BUART:tx_bitclk\/q macrocell30 1250 1250 1061821 RISE 1 +\UART_1:BUART:txn\/main_5 macrocell37 2968 4218 1075605 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_1\/clock_0 macrocell28 0 0 RISE 1 +\UART_1:BUART:txn\/clock_0 macrocell37 0 0 RISE 1 -++++ Path 118 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 140 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \UART_1:BUART:tx_bitclk\/q -Path End : \UART_1:BUART:tx_state_2\/main_3 +Path Begin : \UART_1:BUART:tx_state_2\/q +Path End : \UART_1:BUART:tx_state_2\/main_2 Capture Clock : \UART_1:BUART:tx_state_2\/clock_0 -Path slack : 1075606p +Path slack : 1075618p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -5000,36 +5996,36 @@ End-of-path required time (ps) 1079823 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4218 ++ Data path delay 4206 ------------------------------------- ---- -End-of-path arrival time (ps) 4218 +End-of-path arrival time (ps) 4206 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_bitclk\/clock_0 macrocell25 0 0 RISE 1 +\UART_1:BUART:tx_state_2\/clock_0 macrocell34 0 0 RISE 1 Data path pin name model name delay AT slack edge Fanout -------------------------------- ----------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_bitclk\/q macrocell25 1250 1250 1061814 RISE 1 -\UART_1:BUART:tx_state_2\/main_3 macrocell29 2968 4218 1075606 RISE 1 +\UART_1:BUART:tx_state_2\/q macrocell34 1250 1250 1061861 RISE 1 +\UART_1:BUART:tx_state_2\/main_2 macrocell34 2956 4206 1075618 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_2\/clock_0 macrocell29 0 0 RISE 1 +\UART_1:BUART:tx_state_2\/clock_0 macrocell34 0 0 RISE 1 -++++ Path 119 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 141 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \UART_1:BUART:tx_bitclk\/q -Path End : \UART_1:BUART:txn\/main_5 +Path Begin : \UART_1:BUART:tx_state_2\/q +Path End : \UART_1:BUART:txn\/main_4 Capture Clock : \UART_1:BUART:txn\/clock_0 -Path slack : 1075606p +Path slack : 1075618p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -5040,36 +6036,36 @@ End-of-path required time (ps) 1079823 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4218 ++ Data path delay 4206 ------------------------------------- ---- -End-of-path arrival time (ps) 4218 +End-of-path arrival time (ps) 4206 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_bitclk\/clock_0 macrocell25 0 0 RISE 1 +\UART_1:BUART:tx_state_2\/clock_0 macrocell34 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout --------------------------- ----------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_bitclk\/q macrocell25 1250 1250 1061814 RISE 1 -\UART_1:BUART:txn\/main_5 macrocell32 2968 4218 1075606 RISE 1 +pin name model name delay AT slack edge Fanout +--------------------------- ----------- ----- ----- ------- ---- ------ +\UART_1:BUART:tx_state_2\/q macrocell34 1250 1250 1061861 RISE 1 +\UART_1:BUART:txn\/main_4 macrocell37 2956 4206 1075618 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:txn\/clock_0 macrocell32 0 0 RISE 1 +\UART_1:BUART:txn\/clock_0 macrocell37 0 0 RISE 1 -++++ Path 120 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 142 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \UART_1:BUART:tx_state_2\/q -Path End : \UART_1:BUART:tx_state_2\/main_2 -Capture Clock : \UART_1:BUART:tx_state_2\/clock_0 -Path slack : 1075640p +Path Begin : \UART_1:BUART:txn\/q +Path End : \UART_1:BUART:txn\/main_0 +Capture Clock : \UART_1:BUART:txn\/clock_0 +Path slack : 1076279p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -5080,36 +6076,36 @@ End-of-path required time (ps) 1079823 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4184 ++ Data path delay 3545 ------------------------------------- ---- -End-of-path arrival time (ps) 4184 +End-of-path arrival time (ps) 3545 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_2\/clock_0 macrocell29 0 0 RISE 1 +\UART_1:BUART:txn\/clock_0 macrocell37 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout --------------------------------- ----------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_state_2\/q macrocell29 1250 1250 1061848 RISE 1 -\UART_1:BUART:tx_state_2\/main_2 macrocell29 2934 4184 1075640 RISE 1 +pin name model name delay AT slack edge Fanout +------------------------- ----------- ----- ----- ------- ---- ------ +\UART_1:BUART:txn\/q macrocell37 1250 1250 1076279 RISE 1 +\UART_1:BUART:txn\/main_0 macrocell37 2295 3545 1076279 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_2\/clock_0 macrocell29 0 0 RISE 1 +\UART_1:BUART:txn\/clock_0 macrocell37 0 0 RISE 1 -++++ Path 121 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++ Path 143 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Path Begin : \UART_1:BUART:tx_state_2\/q -Path End : \UART_1:BUART:txn\/main_4 -Capture Clock : \UART_1:BUART:txn\/clock_0 -Path slack : 1075640p +Path Begin : \UART_1:BUART:tx_state_1\/q +Path End : \UART_1:BUART:tx_state_1\/main_0 +Capture Clock : \UART_1:BUART:tx_state_1\/clock_0 +Path slack : 1076338p Capture Clock Arrival Time 0 + Clock path delay 0 @@ -5120,27 +6116,27 @@ End-of-path required time (ps) 1079823 Launch Clock Arrival Time 0 + Clock path delay 0 -+ Data path delay 4184 ++ Data path delay 3485 ------------------------------------- ---- -End-of-path arrival time (ps) 4184 +End-of-path arrival time (ps) 3485 Launch Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:tx_state_2\/clock_0 macrocell29 0 0 RISE 1 +\UART_1:BUART:tx_state_1\/clock_0 macrocell33 0 0 RISE 1 Data path -pin name model name delay AT slack edge Fanout ---------------------------- ----------- ----- ----- ------- ---- ------ -\UART_1:BUART:tx_state_2\/q macrocell29 1250 1250 1061848 RISE 1 -\UART_1:BUART:txn\/main_4 macrocell32 2934 4184 1075640 RISE 1 +pin name model name delay AT slack edge Fanout +-------------------------------- ----------- ----- ----- ------- ---- ------ +\UART_1:BUART:tx_state_1\/q macrocell33 1250 1250 1059785 RISE 1 +\UART_1:BUART:tx_state_1\/main_0 macrocell33 2235 3485 1076338 RISE 1 Capture Clock Path pin name model name delay AT edge Fanout --------------------------------------------------------- -------------- ----- ----- ---- ------ ClockBlock/dclk_glb_1 clockblockcell 0 0 RISE 1 -\UART_1:BUART:txn\/clock_0 macrocell32 0 0 RISE 1 +\UART_1:BUART:tx_state_1\/clock_0 macrocell33 0 0 RISE 1 ===================================================================== diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.v b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.v index 510c768..8e3bfb5 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.v +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.v @@ -1,6 +1,6 @@ // ====================================================================== // PSOC5_SPI_LSM303D.v generated from TopDesign.cysch -// 03/22/2013 at 10:33 +// 07/25/2013 at 16:48 // This file is auto generated. ANY EDITS YOU MAKE MAY BE LOST WHEN THIS FILE IS REGENERATED!!! // ====================================================================== @@ -10,16 +10,19 @@ `define CYDEV_CHIP_REV_LEOPARD_ES3 3 `define CYDEV_CHIP_REV_LEOPARD_ES2 1 `define CYDEV_CHIP_REV_LEOPARD_ES1 0 -`define CYDEV_CHIP_DIE_PANTHER 2 +`define CYDEV_CHIP_DIE_PSOC4A 2 +`define CYDEV_CHIP_REV_PSOC4A_PRODUCTION 17 +`define CYDEV_CHIP_REV_PSOC4A_ES0 17 +`define CYDEV_CHIP_DIE_PANTHER 3 `define CYDEV_CHIP_REV_PANTHER_PRODUCTION 1 `define CYDEV_CHIP_REV_PANTHER_ES1 1 `define CYDEV_CHIP_REV_PANTHER_ES0 0 -`define CYDEV_CHIP_DIE_PSOC5LP 3 +`define CYDEV_CHIP_DIE_PSOC5LP 4 `define CYDEV_CHIP_REV_PSOC5LP_PRODUCTION 0 `define CYDEV_CHIP_REV_PSOC5LP_ES0 0 -`define CYDEV_CHIP_DIE_EXPECT 2 +`define CYDEV_CHIP_DIE_EXPECT 3 `define CYDEV_CHIP_REV_EXPECT 1 -`define CYDEV_CHIP_DIE_ACTUAL 2 +`define CYDEV_CHIP_DIE_ACTUAL 3 /* -- WARNING: The previous section of defines are deprecated and will be removed in a future release -- */ `define CYDEV_CHIP_FAMILY_UNKNOWN 0 `define CYDEV_CHIP_MEMBER_UNKNOWN 0 @@ -29,16 +32,20 @@ `define CYDEV_CHIP_REVISION_3A_ES3 3 `define CYDEV_CHIP_REVISION_3A_ES2 1 `define CYDEV_CHIP_REVISION_3A_ES1 0 -`define CYDEV_CHIP_FAMILY_PSOC5 2 -`define CYDEV_CHIP_MEMBER_5A 2 +`define CYDEV_CHIP_FAMILY_PSOC4 2 +`define CYDEV_CHIP_MEMBER_4A 2 +`define CYDEV_CHIP_REVISION_4A_PRODUCTION 17 +`define CYDEV_CHIP_REVISION_4A_ES0 17 +`define CYDEV_CHIP_FAMILY_PSOC5 3 +`define CYDEV_CHIP_MEMBER_5A 3 `define CYDEV_CHIP_REVISION_5A_PRODUCTION 1 `define CYDEV_CHIP_REVISION_5A_ES1 1 `define CYDEV_CHIP_REVISION_5A_ES0 0 -`define CYDEV_CHIP_MEMBER_5B 3 +`define CYDEV_CHIP_MEMBER_5B 4 `define CYDEV_CHIP_REVISION_5B_PRODUCTION 0 `define CYDEV_CHIP_REVISION_5B_ES0 0 -`define CYDEV_CHIP_FAMILY_USED 2 -`define CYDEV_CHIP_MEMBER_USED 2 +`define CYDEV_CHIP_FAMILY_USED 3 +`define CYDEV_CHIP_MEMBER_USED 3 `define CYDEV_CHIP_REVISION_USED 1 // Component: ZeroTerminal `ifdef CY_BLK_DIR @@ -159,8 +166,8 @@ module SPI_Master_v2_40_0 ( endmodule -// CharLCD_v1_80(ConversionRoutines=true, CUSTOM0=0,E,8,8,8,E,0, CUSTOM1=0,A,A,4,4,4,0, CUSTOM2=0,E,A,E,8,8,0, CUSTOM3=0,E,A,C,A,A,0, CUSTOM4=0,E,8,C,8,E,0, CUSTOM5=0,E,8,E,2,E,0, CUSTOM6=0,E,8,E,2,E,0, CUSTOM7=0,4,4,4,0,4,0, CustomCharacterSet=0, CY_COMPONENT_NAME=CharLCD_v1_80, CY_CONTROL_FILE=<:default:>, CY_FITTER_NAME=LCD, CY_INSTANCE_SHORT_NAME=LCD, CY_MAJOR_VERSION=1, CY_MINOR_VERSION=80, CY_REMOVE=false, CY_SUPPRESS_API_GEN=false, CY_VERSION=cydsfit No Version Information Found, INSTANCE_NAME=LCD, ) -module CharLCD_v1_80_1 ; +// CharLCD_v1_90(ConversionRoutines=true, CUSTOM0=0,E,8,8,8,E,0, CUSTOM1=0,A,A,4,4,4,0, CUSTOM2=0,E,A,E,8,8,0, CUSTOM3=0,E,A,C,A,A,0, CUSTOM4=0,E,8,C,8,E,0, CUSTOM5=0,E,8,E,2,E,0, CUSTOM6=0,E,8,E,2,E,0, CUSTOM7=0,4,4,4,0,4,0, CustomCharacterSet=0, TypeReplacementString=uint8, CY_COMPONENT_NAME=CharLCD_v1_90, CY_CONTROL_FILE=<:default:>, CY_FITTER_NAME=LCD, CY_INSTANCE_SHORT_NAME=LCD, CY_MAJOR_VERSION=1, CY_MINOR_VERSION=90, CY_REMOVE=false, CY_SUPPRESS_API_GEN=false, CY_VERSION=cydsfit No Version Information Found, INSTANCE_NAME=LCD, ) +module CharLCD_v1_90_1 ; @@ -377,9 +384,115 @@ endmodule `include "C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.v" `endif +// Component: B_Timer_v2_50 +`ifdef CY_BLK_DIR +`undef CY_BLK_DIR +`endif + +`ifdef WARP +`define CY_BLK_DIR "$CYPRESS_DIR\..\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_Timer_v2_50" +`include "$CYPRESS_DIR\..\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_Timer_v2_50\B_Timer_v2_50.v" +`else +`define CY_BLK_DIR "C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_Timer_v2_50" +`include "C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_Timer_v2_50\B_Timer_v2_50.v" +`endif + +// Component: OneTerminal +`ifdef CY_BLK_DIR +`undef CY_BLK_DIR +`endif + +`ifdef WARP +`define CY_BLK_DIR "$CYPRESS_DIR\..\psoc\content\cyprimitives\CyPrimitives.cylib\OneTerminal" +`include "$CYPRESS_DIR\..\psoc\content\cyprimitives\CyPrimitives.cylib\OneTerminal\OneTerminal.v" +`else +`define CY_BLK_DIR "C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\OneTerminal" +`include "C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\OneTerminal\OneTerminal.v" +`endif + +// Timer_v2_50(CaptureAlternatingFall=false, CaptureAlternatingRise=false, CaptureCount=2, CaptureCounterEnabled=false, CaptureInputEnabled=false, CaptureMode=0, CONTROL3=0, ControlRegRemoved=0, CtlModeReplacementString=AsyncCtl, CyGetRegReplacementString=CY_GET_REG16, CySetRegReplacementString=CY_SET_REG16, DeviceFamily=PSoC5, EnableMode=0, FF16=false, FF8=false, FixedFunction=false, FixedFunctionUsed=0, HWCaptureCounterEnabled=false, InterruptOnCapture=false, InterruptOnFIFOFull=false, InterruptOnTC=false, IntOnCapture=0, IntOnFIFOFull=0, IntOnTC=0, NumberOfCaptures=1, param45=1, Period=499, RegDefReplacementString=reg16, RegSizeReplacementString=uint16, Resolution=16, RstStatusReplacementString=nrstSts, RunMode=1, SiliconRevision=1, SoftwareCaptureModeEnabled=false, SoftwareTriggerModeEnabled=false, TriggerInputEnabled=false, TriggerMode=0, UDB16=true, UDB24=false, UDB32=false, UDB8=false, UDBControlReg=true, UsesHWEnable=0, VerilogSectionReplacementString=sT16, CY_COMPONENT_NAME=Timer_v2_50, CY_CONTROL_FILE=<:default:>, CY_FITTER_NAME=Timer_1, CY_INSTANCE_SHORT_NAME=Timer_1, CY_MAJOR_VERSION=2, CY_MINOR_VERSION=50, CY_REMOVE=false, CY_SUPPRESS_API_GEN=false, CY_VERSION=cydsfit No Version Information Found, INSTANCE_NAME=Timer_1, ) +module Timer_v2_50_3 ( + clock, + reset, + interrupt, + enable, + capture, + trigger, + capture_out, + tc); + input clock; + input reset; + output interrupt; + input enable; + input capture; + input trigger; + output capture_out; + output tc; + + parameter CaptureCount = 2; + parameter CaptureCounterEnabled = 0; + parameter DeviceFamily = "PSoC5"; + parameter InterruptOnCapture = 0; + parameter InterruptOnTC = 0; + parameter Resolution = 16; + parameter SiliconRevision = "1"; + + wire Net_260; + wire Net_261; + wire Net_266; + wire Net_102; + wire Net_55; + wire Net_57; + wire Net_53; + wire Net_51; + + ZeroTerminal ZeroTerminal_1 ( + .z(Net_260)); + + // VirtualMux_2 (cy_virtualmux_v1_0) + assign interrupt = Net_55; + + // VirtualMux_3 (cy_virtualmux_v1_0) + assign tc = Net_53; + + B_Timer_v2_50 TimerUDB ( + .reset(reset), + .interrupt(Net_55), + .enable(enable), + .trigger(trigger), + .capture_in(capture), + .capture_out(capture_out), + .tc(Net_53), + .clock(clock)); + defparam TimerUDB.Capture_Count = 2; + defparam TimerUDB.CaptureCounterEnabled = 0; + defparam TimerUDB.CaptureMode = 0; + defparam TimerUDB.EnableMode = 0; + defparam TimerUDB.InterruptOnCapture = 0; + defparam TimerUDB.Resolution = 16; + defparam TimerUDB.RunMode = 1; + defparam TimerUDB.TriggerMode = 0; + + OneTerminal OneTerminal_1 ( + .o(Net_102)); + + // VirtualMux_1 (cy_virtualmux_v1_0) + assign Net_266 = Net_102; + + + +endmodule + // top module top ; + wire Net_656; + wire Net_668; + wire Net_667; + wire Net_666; + wire Net_665; + wire Net_664; + wire Net_663; wire Net_583; wire Net_582; wire Net_581; @@ -390,6 +503,9 @@ module top ; wire Net_576; wire Net_575; wire Net_574; + wire Net_589; + wire Net_588; + wire Net_443; wire Net_400; wire Net_263; wire Net_262; @@ -400,23 +516,27 @@ module top ; wire Net_257; wire Net_256; wire Net_255; + wire [2:0] mywire_1; wire Net_254; wire Net_573; wire Net_572; wire Net_571; - wire [1:0] mywire_1; wire Net_570; + wire Net_12; + wire Net_10; + wire Net_596; + wire Net_585; + wire Net_594; + wire Net_592; + wire Net_591; + wire Net_590; wire Net_479; wire Net_425; wire Net_428; wire Net_422; wire Net_419; - wire Net_449; wire Net_438; wire Net_439; - wire Net_443; - wire Net_441; - wire Net_444; wire Net_161; wire Net_191; wire Net_234; @@ -648,7 +768,7 @@ module top ; defparam SPIM.NumberOfDataBits = 8; defparam SPIM.ShiftDir = 0; - CharLCD_v1_80_1 LCD (); + CharLCD_v1_90_1 LCD (); UART_v2_30_2 UART_1 ( .cts_n(1'b0), @@ -768,43 +888,111 @@ module top ; reg tmp__demux_1_1_reg; reg tmp__demux_1_2_reg; reg tmp__demux_1_3_reg; + reg tmp__demux_1_4_reg; + reg tmp__demux_1_5_reg; + reg tmp__demux_1_6_reg; + reg tmp__demux_1_7_reg; always @(Net_438 or mywire_1) begin - case (mywire_1[1:0]) - 2'b00: + case (mywire_1[2:0]) + 3'b000: begin tmp__demux_1_0_reg = Net_438; tmp__demux_1_1_reg = 1'b0; tmp__demux_1_2_reg = 1'b0; tmp__demux_1_3_reg = 1'b0; + tmp__demux_1_4_reg = 1'b0; + tmp__demux_1_5_reg = 1'b0; + tmp__demux_1_6_reg = 1'b0; + tmp__demux_1_7_reg = 1'b0; end - 2'b01: + 3'b001: begin tmp__demux_1_0_reg = 1'b0; tmp__demux_1_1_reg = Net_438; tmp__demux_1_2_reg = 1'b0; tmp__demux_1_3_reg = 1'b0; + tmp__demux_1_4_reg = 1'b0; + tmp__demux_1_5_reg = 1'b0; + tmp__demux_1_6_reg = 1'b0; + tmp__demux_1_7_reg = 1'b0; end - 2'b10: + 3'b010: begin tmp__demux_1_0_reg = 1'b0; tmp__demux_1_1_reg = 1'b0; tmp__demux_1_2_reg = Net_438; tmp__demux_1_3_reg = 1'b0; + tmp__demux_1_4_reg = 1'b0; + tmp__demux_1_5_reg = 1'b0; + tmp__demux_1_6_reg = 1'b0; + tmp__demux_1_7_reg = 1'b0; end - 2'b11: + 3'b011: begin tmp__demux_1_0_reg = 1'b0; tmp__demux_1_1_reg = 1'b0; tmp__demux_1_2_reg = 1'b0; tmp__demux_1_3_reg = Net_438; + tmp__demux_1_4_reg = 1'b0; + tmp__demux_1_5_reg = 1'b0; + tmp__demux_1_6_reg = 1'b0; + tmp__demux_1_7_reg = 1'b0; + end + 3'b100: + begin + tmp__demux_1_0_reg = 1'b0; + tmp__demux_1_1_reg = 1'b0; + tmp__demux_1_2_reg = 1'b0; + tmp__demux_1_3_reg = 1'b0; + tmp__demux_1_4_reg = Net_438; + tmp__demux_1_5_reg = 1'b0; + tmp__demux_1_6_reg = 1'b0; + tmp__demux_1_7_reg = 1'b0; + end + 3'b101: + begin + tmp__demux_1_0_reg = 1'b0; + tmp__demux_1_1_reg = 1'b0; + tmp__demux_1_2_reg = 1'b0; + tmp__demux_1_3_reg = 1'b0; + tmp__demux_1_4_reg = 1'b0; + tmp__demux_1_5_reg = Net_438; + tmp__demux_1_6_reg = 1'b0; + tmp__demux_1_7_reg = 1'b0; + end + 3'b110: + begin + tmp__demux_1_0_reg = 1'b0; + tmp__demux_1_1_reg = 1'b0; + tmp__demux_1_2_reg = 1'b0; + tmp__demux_1_3_reg = 1'b0; + tmp__demux_1_4_reg = 1'b0; + tmp__demux_1_5_reg = 1'b0; + tmp__demux_1_6_reg = Net_438; + tmp__demux_1_7_reg = 1'b0; + end + 3'b111: + begin + tmp__demux_1_0_reg = 1'b0; + tmp__demux_1_1_reg = 1'b0; + tmp__demux_1_2_reg = 1'b0; + tmp__demux_1_3_reg = 1'b0; + tmp__demux_1_4_reg = 1'b0; + tmp__demux_1_5_reg = 1'b0; + tmp__demux_1_6_reg = 1'b0; + tmp__demux_1_7_reg = Net_438; end endcase end - assign Net_444 = tmp__demux_1_0_reg; - assign Net_441 = tmp__demux_1_1_reg; - assign Net_449 = tmp__demux_1_2_reg; - assign Net_443 = tmp__demux_1_3_reg; + assign Net_590 = tmp__demux_1_0_reg; + assign Net_591 = tmp__demux_1_1_reg; + assign Net_592 = tmp__demux_1_2_reg; + assign Net_594 = tmp__demux_1_3_reg; + assign Net_596 = tmp__demux_1_4_reg; + assign Net_443 = tmp__demux_1_5_reg; + assign Net_588 = tmp__demux_1_6_reg; + assign Net_589 = tmp__demux_1_7_reg; end // -- De Mux end -- @@ -819,7 +1007,7 @@ module top ; .control_7(Net_581), .clock(1'b0), .reset(1'b0), - .control_bus(mywire_1[1:0])); + .control_bus(mywire_1[2:0])); defparam SS.Bit0Mode = 0; defparam SS.Bit1Mode = 0; defparam SS.Bit2Mode = 0; @@ -831,7 +1019,7 @@ module top ; defparam SS.BitValue = 0; defparam SS.BusDisplay = 1; defparam SS.ExtrReset = 0; - defparam SS.NumOutputs = 2; + defparam SS.NumOutputs = 3; wire [0:0] tmpOE__Pin_1_net; wire [0:0] tmpFB_0__Pin_1_net; @@ -1113,16 +1301,120 @@ module top ; assign Net_438 = ~Net_439; - assign Net_419 = ~Net_444; + assign Net_419 = ~Net_590; + + assign Net_422 = ~Net_591; - assign Net_422 = ~Net_441; + assign Net_428 = ~Net_592; - assign Net_428 = ~Net_449; + assign Net_425 = ~Net_594; + + wire [0:0] tmpOE__Pin_5_net; + wire [0:0] tmpFB_0__Pin_5_net; + wire [0:0] tmpIO_0__Pin_5_net; + wire [0:0] tmpINTERRUPT_0__Pin_5_net; + electrical [0:0] tmpSIOVREF__Pin_5_net; + + cy_psoc3_pins_v1_10 + #(.id("f04dd9ba-954e-4352-a3f2-4deb8634d958"), + .drive_mode(3'b010), + .ibuf_enabled(1'b1), + .init_dr_st(1'b1), + .input_clk_en(0), + .input_sync(1'b1), + .input_sync_mode(1'b0), + .intr_mode(2'b00), + .invert_in_clock(0), + .invert_in_clock_en(0), + .invert_in_reset(0), + .invert_out_clock(0), + .invert_out_clock_en(0), + .invert_out_reset(0), + .io_voltage(""), + .layout_mode("CONTIGUOUS"), + .oe_conn(1'b0), + .oe_reset(0), + .oe_sync(1'b0), + .output_clk_en(0), + .output_clock_mode(1'b0), + .output_conn(1'b1), + .output_mode(1'b0), + .output_reset(0), + .output_sync(1'b0), + .pa_in_clock(-1), + .pa_in_clock_en(-1), + .pa_in_reset(-1), + .pa_out_clock(-1), + .pa_out_clock_en(-1), + .pa_out_reset(-1), + .pin_aliases(""), + .pin_mode("O"), + .por_state(4), + .use_annotation(1'b0), + .sio_group_cnt(0), + .sio_hyst(1'b0), + .sio_ibuf(""), + .sio_info(2'b00), + .sio_obuf(""), + .sio_refsel(""), + .sio_vtrip(""), + .slew_rate(1'b0), + .spanning(0), + .vtrip(2'b10), + .width(1)) + Pin_5 + (.oe(tmpOE__Pin_5_net), + .y({Net_585}), + .fb({tmpFB_0__Pin_5_net[0:0]}), + .io({tmpIO_0__Pin_5_net[0:0]}), + .siovref(tmpSIOVREF__Pin_5_net), + .interrupt({tmpINTERRUPT_0__Pin_5_net[0:0]}), + .in_clock({1'b0}), + .in_clock_en({1'b1}), + .in_reset({1'b0}), + .out_clock({1'b0}), + .out_clock_en({1'b1}), + .out_reset({1'b0})); + + assign tmpOE__Pin_5_net = (`CYDEV_CHIP_MEMBER_USED == `CYDEV_CHIP_MEMBER_3A && `CYDEV_CHIP_REVISION_USED < `CYDEV_CHIP_REVISION_3A_ES3) ? ~{1'b1} : {1'b1}; + + + assign Net_585 = ~Net_596; + + ZeroTerminal ZeroTerminal_3 ( + .z(Net_12)); + + Timer_v2_50_3 Timer_1 ( + .reset(Net_12), + .interrupt(Net_663), + .enable(1'b1), + .trigger(1'b0), + .capture(1'b0), + .capture_out(Net_667), + .tc(Net_668), + .clock(Net_10)); + defparam Timer_1.CaptureCount = 2; + defparam Timer_1.CaptureCounterEnabled = 0; + defparam Timer_1.DeviceFamily = "PSoC5"; + defparam Timer_1.InterruptOnCapture = 0; + defparam Timer_1.InterruptOnTC = 0; + defparam Timer_1.Resolution = 16; + defparam Timer_1.SiliconRevision = "1"; + + + cy_clock_v1_0 + #(.id("c0fb34bd-1044-4931-9788-16b01ce89812"), + .source_clock_id("315365C3-2E3E-4f04-84A2-BB564A173261"), + .divisor(0), + .period("0"), + .is_direct(1), + .is_digital(1)) + timer_clock + (.clock_out(Net_10)); - assign Net_425 = ~Net_443; diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.vh2 b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.vh2 index e00e88a..caee1c5 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.vh2 +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.vh2 @@ -2,7 +2,7 @@ -- Conversion of PSOC5_SPI_LSM303D.v to vh2: -- -- Cypress Semiconductor - WARP Version 6.3 IR 41 --- Fri Mar 22 10:33:25 2013 +-- Thu Jul 25 16:48:54 2013 -- USE cypress.cypress.all; @@ -294,16 +294,25 @@ SIGNAL tmpIO_0__Tx_1_net_0 : bit; TERMINAL tmpSIOVREF__Tx_1_net_0 : bit; SIGNAL tmpINTERRUPT_0__Tx_1_net_0 : bit; SIGNAL \demux_1:tmp__demux_1_0_reg\ : bit; +SIGNAL mywire_1_2 : bit; SIGNAL mywire_1_1 : bit; SIGNAL mywire_1_0 : bit; SIGNAL Net_438 : bit; SIGNAL \demux_1:tmp__demux_1_1_reg\ : bit; SIGNAL \demux_1:tmp__demux_1_2_reg\ : bit; SIGNAL \demux_1:tmp__demux_1_3_reg\ : bit; -SIGNAL Net_444 : bit; -SIGNAL Net_441 : bit; -SIGNAL Net_449 : bit; +SIGNAL \demux_1:tmp__demux_1_4_reg\ : bit; +SIGNAL \demux_1:tmp__demux_1_5_reg\ : bit; +SIGNAL \demux_1:tmp__demux_1_6_reg\ : bit; +SIGNAL \demux_1:tmp__demux_1_7_reg\ : bit; +SIGNAL Net_590 : bit; +SIGNAL Net_591 : bit; +SIGNAL Net_592 : bit; +SIGNAL Net_594 : bit; +SIGNAL Net_596 : bit; SIGNAL Net_443 : bit; +SIGNAL Net_588 : bit; +SIGNAL Net_589 : bit; SIGNAL \SS:clk\ : bit; SIGNAL \SS:rst\ : bit; SIGNAL \SS:control_bus_7\ : bit; @@ -321,8 +330,6 @@ SIGNAL \SS:control_out_4\ : bit; SIGNAL \SS:control_bus_3\ : bit; ATTRIBUTE port_state_att of \SS:control_bus_3\:SIGNAL IS 2; SIGNAL \SS:control_out_3\ : bit; -SIGNAL \SS:control_bus_2\ : bit; -ATTRIBUTE port_state_att of \SS:control_bus_2\:SIGNAL IS 2; SIGNAL \SS:control_out_2\ : bit; SIGNAL \SS:control_out_1\ : bit; SIGNAL \SS:control_out_0\ : bit; @@ -358,6 +365,204 @@ SIGNAL tmpFB_0__Pin_4_net_0 : bit; SIGNAL tmpIO_0__Pin_4_net_0 : bit; TERMINAL tmpSIOVREF__Pin_4_net_0 : bit; SIGNAL tmpINTERRUPT_0__Pin_4_net_0 : bit; +SIGNAL tmpOE__Pin_5_net_0 : bit; +SIGNAL Net_585 : bit; +SIGNAL tmpFB_0__Pin_5_net_0 : bit; +SIGNAL tmpIO_0__Pin_5_net_0 : bit; +TERMINAL tmpSIOVREF__Pin_5_net_0 : bit; +SIGNAL tmpINTERRUPT_0__Pin_5_net_0 : bit; +SIGNAL Net_12 : bit; +SIGNAL \Timer_1:Net_260\ : bit; +SIGNAL Net_663 : bit; +SIGNAL \Timer_1:Net_55\ : bit; +SIGNAL Net_668 : bit; +SIGNAL \Timer_1:Net_53\ : bit; +SIGNAL Net_10 : bit; +SIGNAL \Timer_1:TimerUDB:ClockOutFromEnBlock\ : bit; +SIGNAL \Timer_1:TimerUDB:control_7\ : bit; +SIGNAL \Timer_1:TimerUDB:control_6\ : bit; +SIGNAL \Timer_1:TimerUDB:control_5\ : bit; +SIGNAL \Timer_1:TimerUDB:control_4\ : bit; +SIGNAL \Timer_1:TimerUDB:control_3\ : bit; +SIGNAL \Timer_1:TimerUDB:control_2\ : bit; +SIGNAL \Timer_1:TimerUDB:control_1\ : bit; +SIGNAL \Timer_1:TimerUDB:control_0\ : bit; +SIGNAL \Timer_1:TimerUDB:ctrl_enable\ : bit; +SIGNAL \Timer_1:TimerUDB:ctrl_ten\ : bit; +SIGNAL \Timer_1:TimerUDB:ctrl_cmode_1\ : bit; +SIGNAL \Timer_1:TimerUDB:ctrl_cmode_0\ : bit; +SIGNAL \Timer_1:TimerUDB:ctrl_tmode_1\ : bit; +SIGNAL \Timer_1:TimerUDB:ctrl_tmode_0\ : bit; +SIGNAL \Timer_1:TimerUDB:ctrl_ic_1\ : bit; +SIGNAL \Timer_1:TimerUDB:ctrl_ic_0\ : bit; +SIGNAL \Timer_1:TimerUDB:fifo_load_polarized\ : bit; +SIGNAL \Timer_1:TimerUDB:capture_last\ : bit; +SIGNAL \Timer_1:TimerUDB:capt_fifo_load\ : bit; +SIGNAL \Timer_1:TimerUDB:timer_enable\ : bit; +SIGNAL \Timer_1:TimerUDB:run_mode\ : bit; +SIGNAL \Timer_1:TimerUDB:hwEnable_reg\ : bit; +SIGNAL \Timer_1:TimerUDB:status_tc\ : bit; +SIGNAL \Timer_1:TimerUDB:trigger_enable\ : bit; +SIGNAL \Timer_1:TimerUDB:per_zero\ : bit; +SIGNAL \Timer_1:TimerUDB:tc_i\ : bit; +SIGNAL \Timer_1:TimerUDB:tc_reg_i\ : bit; +SIGNAL \Timer_1:TimerUDB:hwEnable\ : bit; +SIGNAL \Timer_1:TimerUDB:capture_out_reg_i\ : bit; +SIGNAL Net_667 : bit; +SIGNAL \Timer_1:TimerUDB:capt_fifo_load_int\ : bit; +SIGNAL \Timer_1:TimerUDB:runmode_enable\ : bit; +SIGNAL \Timer_1:TimerUDB:trig_disable\ : bit; +SIGNAL \Timer_1:TimerUDB:trig_reg\ : bit; +SIGNAL \Timer_1:TimerUDB:status_6\ : bit; +SIGNAL \Timer_1:TimerUDB:status_5\ : bit; +SIGNAL \Timer_1:TimerUDB:status_4\ : bit; +SIGNAL \Timer_1:TimerUDB:status_0\ : bit; +SIGNAL \Timer_1:TimerUDB:status_1\ : bit; +SIGNAL \Timer_1:TimerUDB:status_2\ : bit; +SIGNAL \Timer_1:TimerUDB:fifo_full\ : bit; +SIGNAL \Timer_1:TimerUDB:status_3\ : bit; +SIGNAL \Timer_1:TimerUDB:fifo_nempty\ : bit; +SIGNAL \Timer_1:TimerUDB:cs_addr_2\ : bit; +SIGNAL \Timer_1:TimerUDB:cs_addr_1\ : bit; +SIGNAL \Timer_1:TimerUDB:cs_addr_0\ : bit; +SIGNAL \Timer_1:TimerUDB:zeros_3\ : bit; +SIGNAL \Timer_1:TimerUDB:zeros_2\ : bit; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:ce0_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:ce0_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cl0_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:cl0_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:nc0\ : bit; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:ff0_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:ff0_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:ce1_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:ce1_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cl1_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:cl1_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:z1_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:z1_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:ff1_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:ff1_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:ov_msb_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:ov_msb_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:co_msb_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:co_msb_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cmsb_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:cmsb_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:so_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:so_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:nc3\ : bit; +SIGNAL \Timer_1:TimerUDB:nc4\ : bit; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:f1_bus_stat_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:f1_bus_stat_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:f1_blk_stat_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:f1_blk_stat_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:ce0_reg_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:ce0_reg_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cl0_reg_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:cl0_reg_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:z0_reg_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:z0_reg_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:ff0_reg_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:ff0_reg_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:ce1_reg_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:ce1_reg_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cl1_reg_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:cl1_reg_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:z1_reg_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:z1_reg_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:ff1_reg_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:ff1_reg_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:ov_msb_reg_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:ov_msb_reg_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:co_msb_reg_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:co_msb_reg_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cmsb_reg_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:cmsb_reg_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:so_reg_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:so_reg_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:f0_bus_stat_reg_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:f0_bus_stat_reg_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:f0_blk_stat_reg_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:f0_blk_stat_reg_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:f1_bus_stat_reg_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:f1_bus_stat_reg_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:f1_blk_stat_reg_0\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:f1_blk_stat_reg_0\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:carry\ : bit; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:sh_right\ : bit; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:sh_left\ : bit; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:msb\ : bit; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cmp_eq_1\ : bit; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cmp_eq_0\ : bit; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cmp_lt_1\ : bit; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cmp_lt_0\ : bit; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cmp_zero_1\ : bit; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cmp_zero_0\ : bit; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cmp_ff_1\ : bit; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cmp_ff_0\ : bit; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cap_1\ : bit; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cap_0\ : bit; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cfb\ : bit; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:ce0_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:ce0_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cl0_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:cl0_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:ff0_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:ff0_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:ce1_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:ce1_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cl1_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:cl1_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:z1_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:z1_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:ff1_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:ff1_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:ov_msb_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:ov_msb_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:co_msb_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:co_msb_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cmsb_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:cmsb_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:so_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:so_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:f1_bus_stat_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:f1_bus_stat_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:f1_blk_stat_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:f1_blk_stat_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:ce0_reg_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:ce0_reg_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cl0_reg_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:cl0_reg_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:z0_reg_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:z0_reg_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:ff0_reg_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:ff0_reg_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:ce1_reg_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:ce1_reg_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cl1_reg_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:cl1_reg_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:z1_reg_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:z1_reg_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:ff1_reg_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:ff1_reg_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:ov_msb_reg_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:ov_msb_reg_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:co_msb_reg_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:co_msb_reg_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:cmsb_reg_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:cmsb_reg_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:so_reg_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:so_reg_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:f0_bus_stat_reg_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:f0_bus_stat_reg_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:f0_blk_stat_reg_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:f0_blk_stat_reg_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:f1_bus_stat_reg_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:f1_bus_stat_reg_1\:SIGNAL IS 2; +SIGNAL \Timer_1:TimerUDB:sT16:timerdp:f1_blk_stat_reg_1\ : bit; +ATTRIBUTE port_state_att of \Timer_1:TimerUDB:sT16:timerdp:f1_blk_stat_reg_1\:SIGNAL IS 2; +SIGNAL \Timer_1:Net_102\ : bit; +SIGNAL \Timer_1:Net_266\ : bit; SIGNAL Net_479D : bit; SIGNAL \SPIM:BSPIM:dpcounter_one_reg\\D\ : bit; SIGNAL \SPIM:BSPIM:so_send_reg\\D\ : bit; @@ -383,6 +588,12 @@ SIGNAL Net_256D : bit; SIGNAL \UART_1:BUART:tx_ctrl_mark_last\\D\ : bit; SIGNAL \UART_1:BUART:tx_mark\\D\ : bit; SIGNAL \UART_1:BUART:tx_parity_bit\\D\ : bit; +SIGNAL \Timer_1:TimerUDB:capture_last\\D\ : bit; +SIGNAL \Timer_1:TimerUDB:hwEnable_reg\\D\ : bit; +SIGNAL \Timer_1:TimerUDB:tc_reg_i\\D\ : bit; +SIGNAL \Timer_1:TimerUDB:capture_out_reg_i\\D\ : bit; +SIGNAL \Timer_1:TimerUDB:runmode_enable\\D\ : bit; +SIGNAL \Timer_1:TimerUDB:trig_disable\\D\ : bit; BEGIN zero <= ('0') ; @@ -518,20 +729,38 @@ Net_234 <= (not \UART_1:BUART:txn\); Net_419 <= (mywire_1_0 OR mywire_1_1 + OR mywire_1_2 OR Net_439); Net_422 <= (not mywire_1_0 OR mywire_1_1 + OR mywire_1_2 OR Net_439); Net_428 <= (mywire_1_0 OR not mywire_1_1 + OR mywire_1_2 OR Net_439); Net_425 <= (not mywire_1_0 OR not mywire_1_1 + OR mywire_1_2 OR Net_439); +Net_585 <= (mywire_1_0 + OR mywire_1_1 + OR not mywire_1_2 + OR Net_439); + +\Timer_1:TimerUDB:status_tc\ <= ((\Timer_1:TimerUDB:run_mode\ and \Timer_1:TimerUDB:per_zero\)); + +\Timer_1:TimerUDB:runmode_enable\\D\ <= ((not \Timer_1:TimerUDB:per_zero\ and not \Timer_1:TimerUDB:trig_disable\ and \Timer_1:TimerUDB:control_7\) + OR (not \Timer_1:TimerUDB:run_mode\ and not \Timer_1:TimerUDB:trig_disable\ and \Timer_1:TimerUDB:control_7\) + OR (not \Timer_1:TimerUDB:timer_enable\ and not \Timer_1:TimerUDB:trig_disable\ and \Timer_1:TimerUDB:control_7\)); + +\Timer_1:TimerUDB:trig_disable\\D\ <= ((\Timer_1:TimerUDB:timer_enable\ and \Timer_1:TimerUDB:run_mode\ and \Timer_1:TimerUDB:per_zero\) + OR \Timer_1:TimerUDB:trig_disable\); + m_miso_pin:cy_psoc3_pins_v1_10 GENERIC MAP(id=>"1425177d-0d0e-4468-8bcc-e638e5509a9b", drive_mode=>"010", @@ -1201,7 +1430,7 @@ Tx_1:cy_psoc3_pins_v1_10 PORT MAP(reset=>zero, clock=>zero, control=>(\SS:control_7\, \SS:control_6\, \SS:control_5\, \SS:control_4\, - \SS:control_3\, \SS:control_2\, mywire_1_1, mywire_1_0)); + \SS:control_3\, mywire_1_2, mywire_1_1, mywire_1_0)); Pin_1:cy_psoc3_pins_v1_10 GENERIC MAP(id=>"52f31aa9-2f0a-497d-9a1f-1424095e13e6", drive_mode=>"010", @@ -1462,6 +1691,277 @@ Pin_4:cy_psoc3_pins_v1_10 out_clock_en=>tmpOE__m_miso_pin_net_0, out_reset=>zero, interrupt=>tmpINTERRUPT_0__Pin_4_net_0); +Pin_5:cy_psoc3_pins_v1_10 + GENERIC MAP(id=>"f04dd9ba-954e-4352-a3f2-4deb8634d958", + drive_mode=>"010", + ibuf_enabled=>"1", + init_dr_st=>"1", + input_sync=>"1", + input_clk_en=>'0', + input_sync_mode=>"0", + intr_mode=>"00", + invert_in_clock=>'0', + invert_in_clock_en=>'0', + invert_in_reset=>'0', + invert_out_clock=>'0', + invert_out_clock_en=>'0', + invert_out_reset=>'0', + io_voltage=>"", + layout_mode=>"CONTIGUOUS", + output_conn=>"1", + output_sync=>"0", + output_clk_en=>'0', + output_mode=>"0", + output_reset=>'0', + output_clock_mode=>"0", + oe_sync=>"0", + oe_conn=>"0", + oe_reset=>'0', + pin_aliases=>"", + pin_mode=>"O", + por_state=>4, + sio_group_cnt=>0, + sio_hifreq=>"", + sio_hyst=>"0", + sio_ibuf=>"00000000", + sio_info=>"00", + sio_obuf=>"00000000", + sio_refsel=>"00000000", + sio_vtrip=>"00000000", + slew_rate=>"0", + spanning=>'0', + sw_only=>'0', + vtrip=>"10", + width=>1, + port_alias_required=>'0', + port_alias_group=>"", + use_annotation=>"0", + pa_in_clock=>-1, + pa_in_clock_en=>-1, + pa_in_reset=>-1, + pa_out_clock=>-1, + pa_out_clock_en=>-1, + pa_out_reset=>-1) + PORT MAP(oe=>(tmpOE__m_miso_pin_net_0), + y=>Net_585, + fb=>(tmpFB_0__Pin_5_net_0), + analog=>(open), + io=>(tmpIO_0__Pin_5_net_0), + siovref=>(tmpSIOVREF__Pin_5_net_0), + annotation=>(open), + in_clock=>zero, + in_clock_en=>tmpOE__m_miso_pin_net_0, + in_reset=>zero, + out_clock=>zero, + out_clock_en=>tmpOE__m_miso_pin_net_0, + out_reset=>zero, + interrupt=>tmpINTERRUPT_0__Pin_5_net_0); +\Timer_1:TimerUDB:clock_enable_block\:cy_psoc3_udb_clock_enable_v1_0 + GENERIC MAP(sync_mode=>'1') + PORT MAP(clock_in=>Net_10, + enable=>tmpOE__m_miso_pin_net_0, + clock_out=>\Timer_1:TimerUDB:ClockOutFromEnBlock\); +\Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\:cy_psoc3_control + GENERIC MAP(cy_init_value=>"00000000", + cy_force_order=>'1', + cy_ctrl_mode_1=>"00000000", + cy_ctrl_mode_0=>"00000000", + cy_ext_reset=>'0') + PORT MAP(reset=>zero, + clock=>zero, + control=>(\Timer_1:TimerUDB:control_7\, \Timer_1:TimerUDB:control_6\, \Timer_1:TimerUDB:control_5\, \Timer_1:TimerUDB:control_4\, + \Timer_1:TimerUDB:control_3\, \Timer_1:TimerUDB:control_2\, \Timer_1:TimerUDB:control_1\, \Timer_1:TimerUDB:control_0\)); +\Timer_1:TimerUDB:nrstSts:stsreg\:cy_psoc3_statusi + GENERIC MAP(cy_force_order=>'1', + cy_md_select=>"0000011", + cy_int_mask=>"1111111") + PORT MAP(reset=>zero, + clock=>\Timer_1:TimerUDB:ClockOutFromEnBlock\, + status=>(zero, zero, zero, \Timer_1:TimerUDB:status_3\, + \Timer_1:TimerUDB:status_2\, zero, \Timer_1:TimerUDB:status_tc\), + interrupt=>\Timer_1:Net_55\); +\Timer_1:TimerUDB:sT16:timerdp:u0\:cy_psoc3_dp + GENERIC MAP(cy_dpconfig=>"0000000001000000000000000100000001000000010000000000000010000000000000001000000000000000100000000000000010000000000000001000000011111111000000001111111111111111000000000000000000000001000000000000000000011000", + d0_init=>"00000000", + d1_init=>"00000000", + a0_init=>"00000000", + a1_init=>"00000000", + ce0_sync=>'1', + cl0_sync=>'1', + z0_sync=>'1', + ff0_sync=>'1', + ce1_sync=>'1', + cl1_sync=>'1', + z1_sync=>'1', + ff1_sync=>'1', + ov_msb_sync=>'1', + co_msb_sync=>'1', + cmsb_sync=>'1', + so_sync=>'1', + f0_bus_sync=>'1', + f0_blk_sync=>'1', + f1_bus_sync=>'1', + f1_blk_sync=>'1') + PORT MAP(reset=>zero, + clk=>\Timer_1:TimerUDB:ClockOutFromEnBlock\, + cs_addr=>(zero, \Timer_1:TimerUDB:timer_enable\, \Timer_1:TimerUDB:per_zero\), + route_si=>zero, + route_ci=>zero, + f0_load=>zero, + f1_load=>zero, + d0_load=>zero, + d1_load=>zero, + ce0=>open, + cl0=>open, + z0=>\Timer_1:TimerUDB:nc0\, + ff0=>open, + ce1=>open, + cl1=>open, + z1=>open, + ff1=>open, + ov_msb=>open, + co_msb=>open, + cmsb=>open, + so=>open, + f0_bus_stat=>\Timer_1:TimerUDB:nc3\, + f0_blk_stat=>\Timer_1:TimerUDB:nc4\, + f1_bus_stat=>open, + f1_blk_stat=>open, + ce0_reg=>open, + cl0_reg=>open, + z0_reg=>open, + ff0_reg=>open, + ce1_reg=>open, + cl1_reg=>open, + z1_reg=>open, + ff1_reg=>open, + ov_msb_reg=>open, + co_msb_reg=>open, + cmsb_reg=>open, + so_reg=>open, + f0_bus_stat_reg=>open, + f0_blk_stat_reg=>open, + f1_bus_stat_reg=>open, + f1_blk_stat_reg=>open, + ci=>zero, + co=>\Timer_1:TimerUDB:sT16:timerdp:carry\, + sir=>zero, + sor=>open, + sil=>\Timer_1:TimerUDB:sT16:timerdp:sh_right\, + sol=>\Timer_1:TimerUDB:sT16:timerdp:sh_left\, + msbi=>\Timer_1:TimerUDB:sT16:timerdp:msb\, + msbo=>open, + cei=>(zero, zero), + ceo=>(\Timer_1:TimerUDB:sT16:timerdp:cmp_eq_1\, \Timer_1:TimerUDB:sT16:timerdp:cmp_eq_0\), + cli=>(zero, zero), + clo=>(\Timer_1:TimerUDB:sT16:timerdp:cmp_lt_1\, \Timer_1:TimerUDB:sT16:timerdp:cmp_lt_0\), + zi=>(zero, zero), + zo=>(\Timer_1:TimerUDB:sT16:timerdp:cmp_zero_1\, \Timer_1:TimerUDB:sT16:timerdp:cmp_zero_0\), + fi=>(zero, zero), + fo=>(\Timer_1:TimerUDB:sT16:timerdp:cmp_ff_1\, \Timer_1:TimerUDB:sT16:timerdp:cmp_ff_0\), + capi=>(zero, zero), + capo=>(\Timer_1:TimerUDB:sT16:timerdp:cap_1\, \Timer_1:TimerUDB:sT16:timerdp:cap_0\), + cfbi=>zero, + cfbo=>\Timer_1:TimerUDB:sT16:timerdp:cfb\, + pi=>(zero, zero, zero, zero, + zero, zero, zero, zero), + po=>open); +\Timer_1:TimerUDB:sT16:timerdp:u1\:cy_psoc3_dp + GENERIC MAP(cy_dpconfig=>"0000000001000000000000000100000001000000010000000000000010000000000000001000000000000000100000000000000010000000000000001000000011111111000000001111111111111111100000110000000000000001000000110000000000011000", + d0_init=>"00000000", + d1_init=>"00000000", + a0_init=>"00000000", + a1_init=>"00000000", + ce0_sync=>'1', + cl0_sync=>'1', + z0_sync=>'1', + ff0_sync=>'1', + ce1_sync=>'1', + cl1_sync=>'1', + z1_sync=>'1', + ff1_sync=>'1', + ov_msb_sync=>'1', + co_msb_sync=>'1', + cmsb_sync=>'1', + so_sync=>'1', + f0_bus_sync=>'1', + f0_blk_sync=>'1', + f1_bus_sync=>'1', + f1_blk_sync=>'1') + PORT MAP(reset=>zero, + clk=>\Timer_1:TimerUDB:ClockOutFromEnBlock\, + cs_addr=>(zero, \Timer_1:TimerUDB:timer_enable\, \Timer_1:TimerUDB:per_zero\), + route_si=>zero, + route_ci=>zero, + f0_load=>zero, + f1_load=>zero, + d0_load=>zero, + d1_load=>zero, + ce0=>open, + cl0=>open, + z0=>\Timer_1:TimerUDB:per_zero\, + ff0=>open, + ce1=>open, + cl1=>open, + z1=>open, + ff1=>open, + ov_msb=>open, + co_msb=>open, + cmsb=>open, + so=>open, + f0_bus_stat=>\Timer_1:TimerUDB:status_3\, + f0_blk_stat=>\Timer_1:TimerUDB:status_2\, + f1_bus_stat=>open, + f1_blk_stat=>open, + ce0_reg=>open, + cl0_reg=>open, + z0_reg=>open, + ff0_reg=>open, + ce1_reg=>open, + cl1_reg=>open, + z1_reg=>open, + ff1_reg=>open, + ov_msb_reg=>open, + co_msb_reg=>open, + cmsb_reg=>open, + so_reg=>open, + f0_bus_stat_reg=>open, + f0_blk_stat_reg=>open, + f1_bus_stat_reg=>open, + f1_blk_stat_reg=>open, + ci=>\Timer_1:TimerUDB:sT16:timerdp:carry\, + co=>open, + sir=>\Timer_1:TimerUDB:sT16:timerdp:sh_left\, + sor=>\Timer_1:TimerUDB:sT16:timerdp:sh_right\, + sil=>zero, + sol=>open, + msbi=>zero, + msbo=>\Timer_1:TimerUDB:sT16:timerdp:msb\, + cei=>(\Timer_1:TimerUDB:sT16:timerdp:cmp_eq_1\, \Timer_1:TimerUDB:sT16:timerdp:cmp_eq_0\), + ceo=>open, + cli=>(\Timer_1:TimerUDB:sT16:timerdp:cmp_lt_1\, \Timer_1:TimerUDB:sT16:timerdp:cmp_lt_0\), + clo=>open, + zi=>(\Timer_1:TimerUDB:sT16:timerdp:cmp_zero_1\, \Timer_1:TimerUDB:sT16:timerdp:cmp_zero_0\), + zo=>open, + fi=>(\Timer_1:TimerUDB:sT16:timerdp:cmp_ff_1\, \Timer_1:TimerUDB:sT16:timerdp:cmp_ff_0\), + fo=>open, + capi=>(\Timer_1:TimerUDB:sT16:timerdp:cap_1\, \Timer_1:TimerUDB:sT16:timerdp:cap_0\), + capo=>open, + cfbi=>\Timer_1:TimerUDB:sT16:timerdp:cfb\, + cfbo=>open, + pi=>(zero, zero, zero, zero, + zero, zero, zero, zero), + po=>open); +timer_clock:cy_clock_v1_0 + GENERIC MAP(cy_registers=>"", + id=>"c0fb34bd-1044-4931-9788-16b01ce89812", + source_clock_id=>"315365C3-2E3E-4f04-84A2-BB564A173261", + divisor=>0, + period=>"0", + is_direct=>'1', + is_digital=>'1') + PORT MAP(clock_out=>Net_10, + dig_domain_out=>open); Net_479:cy_dff PORT MAP(d=>Net_479D, clk=>\SPIM:BSPIM:clk_fin\, @@ -1562,5 +2062,29 @@ Net_256:cy_dff PORT MAP(d=>\UART_1:BUART:tx_parity_bit\\D\, clk=>\UART_1:BUART:clock_op\, q=>\UART_1:BUART:tx_parity_bit\); +\Timer_1:TimerUDB:capture_last\:cy_dff + PORT MAP(d=>zero, + clk=>\Timer_1:TimerUDB:ClockOutFromEnBlock\, + q=>\Timer_1:TimerUDB:capture_last\); +\Timer_1:TimerUDB:hwEnable_reg\:cy_dff + PORT MAP(d=>\Timer_1:TimerUDB:control_7\, + clk=>\Timer_1:TimerUDB:ClockOutFromEnBlock\, + q=>\Timer_1:TimerUDB:run_mode\); +\Timer_1:TimerUDB:tc_reg_i\:cy_dff + PORT MAP(d=>\Timer_1:TimerUDB:status_tc\, + clk=>\Timer_1:TimerUDB:ClockOutFromEnBlock\, + q=>\Timer_1:TimerUDB:tc_reg_i\); +\Timer_1:TimerUDB:capture_out_reg_i\:cy_dff + PORT MAP(d=>zero, + clk=>\Timer_1:TimerUDB:ClockOutFromEnBlock\, + q=>\Timer_1:TimerUDB:capture_out_reg_i\); +\Timer_1:TimerUDB:runmode_enable\:cy_dff + PORT MAP(d=>\Timer_1:TimerUDB:runmode_enable\\D\, + clk=>\Timer_1:TimerUDB:ClockOutFromEnBlock\, + q=>\Timer_1:TimerUDB:timer_enable\); +\Timer_1:TimerUDB:trig_disable\:cy_dff + PORT MAP(d=>\Timer_1:TimerUDB:trig_disable\\D\, + clk=>\Timer_1:TimerUDB:ClockOutFromEnBlock\, + q=>\Timer_1:TimerUDB:trig_disable\); END R_T_L; diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.wde b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.wde index 6c8bf7e..ae2d2d1 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.wde +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D.wde @@ -11,5 +11,7 @@ C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\conten C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cyprimitives\CyPrimitives.cylib\demux_v1_10\demux_v1_10.v C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\CyControlReg_v1_70.v C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_Timer_v2_50\B_Timer_v2_50.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\..\psoc\content\cyprimitives\CyPrimitives.cylib\OneTerminal\OneTerminal.v C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\rtlpkg.vif C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\warp\lib\common\stdlogic\cy_psoc3.vif diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_p.lib b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_p.lib index 7621965..7df65f1 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_p.lib +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_p.lib @@ -247,7 +247,7 @@ library (timing) { } pin (q) { direction : output; - function : "((!main_0 * !main_1 * !main_2)) ^ 1"; + function : "((!main_0 * !main_1 * !main_2 * !main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -257,7 +257,7 @@ library (timing) { } pin (q_fixed) { direction : output; - function : "((!main_0 * !main_1 * !main_2)) ^ 1"; + function : "((!main_0 * !main_1 * !main_2 * !main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -335,7 +335,7 @@ library (timing) { } pin (q) { direction : output; - function : "((!main_0 * !main_1 * main_2)) ^ 1"; + function : "((!main_0 * !main_1 * !main_2 * main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -345,7 +345,7 @@ library (timing) { } pin (q_fixed) { direction : output; - function : "((!main_0 * !main_1 * main_2)) ^ 1"; + function : "((!main_0 * !main_1 * !main_2 * main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -423,7 +423,7 @@ library (timing) { } pin (q) { direction : output; - function : "((!main_0 * main_1 * main_2)) ^ 1"; + function : "((!main_0 * !main_1 * main_2 * main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -433,7 +433,7 @@ library (timing) { } pin (q_fixed) { direction : output; - function : "((!main_0 * main_1 * main_2)) ^ 1"; + function : "((!main_0 * !main_1 * main_2 * main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -511,7 +511,7 @@ library (timing) { } pin (q) { direction : output; - function : "((!main_0 * main_1 * !main_2)) ^ 1"; + function : "((!main_0 * !main_1 * main_2 * !main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -521,7 +521,7 @@ library (timing) { } pin (q_fixed) { direction : output; - function : "((!main_0 * main_1 * !main_2)) ^ 1"; + function : "((!main_0 * !main_1 * main_2 * !main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -726,6 +726,94 @@ library (timing) { } } } + cell (macrocell9) { + pin (cin) { + direction : input; + } + bundle (cpt0) { + members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); + direction : input; + } + bundle (cpt1) { + members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); + direction : input; + } + bundle (main) { + members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); + direction : input; + } + bundle (clock) { + members (clock_0); + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (ar) { + members (ar_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + bundle (ap) { + members (ap_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + pin (cout) { + direction : output; + } + pin (q) { + direction : output; + function : "((!main_0 * main_1 * !main_2 * !main_3)) ^ 1"; + timing () { + timing_type : combinational; + related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; + intrinsic_rise : 3.350; + intrinsic_fall : 3.350; + } + } + pin (q_fixed) { + direction : output; + function : "((!main_0 * main_1 * !main_2 * !main_3)) ^ 1"; + timing () { + timing_type : combinational; + related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; + intrinsic_rise : 3.350; + intrinsic_fall : 3.350; + } + } + } cell (iocell1) { pin (in_clock) { direction : input; @@ -999,6 +1087,74 @@ library (timing) { } } cell (iocell5) { + pin (in_clock) { + direction : input; + clock : true; + } + pin (in_clock_en) { + direction : input; + } + pin (in_reset) { + direction : input; + } + pin (out_clock) { + direction : input; + clock : true; + } + pin (out_clock_en) { + direction : input; + } + pin (out_reset) { + direction : input; + } + pin (pin_input) { + direction : input; + } + pin (pa_out) { + direction : output; + } + pin (oe) { + direction : input; + } + pin (pad_in) { + direction : input; + } + pin (pad_out) { + direction : output; + timing () { + timing_sense : negative_unate; + timing_type : three_state_disable; + related_pin : "oe"; + intrinsic_rise : 16.870; + intrinsic_fall : 16.870; + } + timing () { + timing_sense : positive_unate; + timing_type : three_state_enable; + related_pin : "oe"; + intrinsic_rise : 16.870; + intrinsic_fall : 16.870; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "pin_input"; + intrinsic_rise : 16.839; + intrinsic_fall : 16.839; + } + } + pin (fb) { + direction : output; + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "pad_in"; + intrinsic_rise : 16.918; + intrinsic_fall : 16.918; + } + } + } + cell (iocell6) { pin (in_clock) { direction : input; clock : true; @@ -1066,7 +1222,7 @@ library (timing) { } } } - cell (iocell6) { + cell (iocell7) { pin (in_clock) { direction : input; clock : true; @@ -1134,7 +1290,7 @@ library (timing) { } } } - cell (iocell7) { + cell (iocell8) { pin (in_clock) { direction : input; clock : true; @@ -1202,7 +1358,7 @@ library (timing) { } } } - cell (iocell8) { + cell (iocell9) { pin (in_clock) { direction : input; clock : true; @@ -1270,7 +1426,7 @@ library (timing) { } } } - cell (iocell9) { + cell (iocell10) { pin (in_clock) { direction : input; clock : true; @@ -1338,7 +1494,7 @@ library (timing) { } } } - cell (iocell10) { + cell (iocell11) { pin (in_clock) { direction : input; clock : true; @@ -1406,7 +1562,7 @@ library (timing) { } } } - cell (iocell11) { + cell (iocell12) { pin (in_clock) { direction : input; clock : true; @@ -1474,7 +1630,7 @@ library (timing) { } } } - cell (iocell12) { + cell (iocell13) { pin (in_clock) { direction : input; clock : true; @@ -1694,7 +1850,7 @@ library (timing) { direction : output; } } - cell (macrocell9) { + cell (macrocell10) { pin (cin) { direction : input; } @@ -1792,7 +1948,7 @@ library (timing) { } } } - cell (macrocell10) { + cell (macrocell11) { pin (cin) { direction : input; } @@ -1880,7 +2036,7 @@ library (timing) { } } } - cell (macrocell11) { + cell (macrocell12) { pin (cin) { direction : input; } @@ -1978,7 +2134,7 @@ library (timing) { } } } - cell (macrocell12) { + cell (macrocell13) { pin (cin) { direction : input; } @@ -2076,7 +2232,7 @@ library (timing) { } } } - cell (macrocell13) { + cell (macrocell14) { pin (cin) { direction : input; } @@ -2174,7 +2330,7 @@ library (timing) { } } } - cell (macrocell14) { + cell (macrocell15) { pin (cin) { direction : input; } @@ -2272,7 +2428,7 @@ library (timing) { } } } - cell (macrocell15) { + cell (macrocell16) { pin (cin) { direction : input; } @@ -2370,7 +2526,7 @@ library (timing) { } } } - cell (macrocell16) { + cell (macrocell17) { pin (cin) { direction : input; } @@ -2468,7 +2624,7 @@ library (timing) { } } } - cell (macrocell17) { + cell (macrocell18) { pin (cin) { direction : input; } @@ -2566,7 +2722,7 @@ library (timing) { } } } - cell (macrocell18) { + cell (macrocell19) { pin (cin) { direction : input; } @@ -3159,7 +3315,7 @@ library (timing) { direction : output; } } - cell (macrocell19) { + cell (macrocell20) { pin (cin) { direction : input; } @@ -3257,7 +3413,7 @@ library (timing) { } } } - cell (macrocell20) { + cell (macrocell21) { pin (cin) { direction : input; } @@ -3355,7 +3511,7 @@ library (timing) { } } } - cell (macrocell21) { + cell (macrocell22) { pin (cin) { direction : input; } @@ -3453,7 +3609,7 @@ library (timing) { } } } - cell (macrocell22) { + cell (macrocell23) { pin (cin) { direction : input; } @@ -3541,7 +3697,7 @@ library (timing) { } } } - cell (macrocell23) { + cell (macrocell24) { pin (cin) { direction : input; } @@ -3787,24 +3943,8 @@ library (timing) { } } } - cell (macrocell24) { - pin (cin) { - direction : input; - } - bundle (cpt0) { - members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); - direction : input; - } - bundle (cpt1) { - members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); - direction : input; - } - bundle (main) { - members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); - direction : input; - } - bundle (clock) { - members (clock_0); + cell (statusicell3) { + pin (clock) { direction : input; clock : true; } @@ -3812,59 +3952,1778 @@ library (timing) { direction : input; timing () { timing_type : setup_rising; - related_pin : "clock_0"; + related_pin : "clock"; intrinsic_rise : 2.100; intrinsic_fall : 2.100; } timing () { timing_type : hold_rising; - related_pin : "clock_0"; + related_pin : "clock"; intrinsic_rise : 0.000; intrinsic_fall : 0.000; } } - bundle (ar) { - members (ar_0); + pin (reset) { direction : input; timing () { timing_type : recovery_rising; - related_pin : "clock_0"; + related_pin : "clock"; intrinsic_fall : 0.000; } timing () { timing_type : removal_rising; - related_pin : "clock_0"; + related_pin : "clock"; intrinsic_fall : 0.000; } } - bundle (ap) { - members (ap_0); + pin (status_0) { direction : input; timing () { - timing_type : recovery_rising; - related_pin : "clock_0"; - intrinsic_fall : 0.000; + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 1.570; + intrinsic_fall : 1.570; } timing () { - timing_type : removal_rising; - related_pin : "clock_0"; - intrinsic_fall : 0.000; + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 2.000; + intrinsic_fall : 2.000; } } - pin (cout) { - direction : output; - } - pin (q) { - direction : output; - function : "((!main_0 * !main_1 * !main_2) + (!main_0 * !main_1 * main_3)) ^ 1"; + pin (status_1) { + direction : input; timing () { - timing_type : combinational; - related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; - intrinsic_rise : 3.350; - intrinsic_fall : 3.350; + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 1.570; + intrinsic_fall : 1.570; } - } - pin (q_fixed) { + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 2.000; + intrinsic_fall : 2.000; + } + } + pin (status_2) { + direction : input; + } + pin (status_3) { + direction : input; + } + pin (status_4) { + direction : input; + } + pin (status_5) { + direction : input; + } + pin (status_6) { + direction : input; + } + pin (interrupt) { + direction : output; + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_2"; + intrinsic_rise : 2.460; + intrinsic_fall : 2.460; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_2"; + intrinsic_rise : 3.910; + intrinsic_fall : 3.910; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_3"; + intrinsic_rise : 2.460; + intrinsic_fall : 2.460; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_3"; + intrinsic_rise : 3.910; + intrinsic_fall : 3.910; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_4"; + intrinsic_rise : 2.460; + intrinsic_fall : 2.460; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_4"; + intrinsic_rise : 3.910; + intrinsic_fall : 3.910; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_5"; + intrinsic_rise : 2.460; + intrinsic_fall : 2.460; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_5"; + intrinsic_rise : 3.910; + intrinsic_fall : 3.910; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_6"; + intrinsic_rise : 2.460; + intrinsic_fall : 2.460; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_6"; + intrinsic_rise : 3.910; + intrinsic_fall : 3.910; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 4.030; + intrinsic_fall : 4.030; + } + timing () { + timing_sense : negative_unate; + timing_type : clear; + related_pin : "reset"; + intrinsic_rise : 8.260; + intrinsic_fall : 8.260; + } + } + } + cell (macrocell25) { + pin (cin) { + direction : input; + } + bundle (cpt0) { + members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); + direction : input; + } + bundle (cpt1) { + members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); + direction : input; + } + bundle (main) { + members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 3.510; + intrinsic_fall : 3.510; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (clock) { + members (clock_0); + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (ar) { + members (ar_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + bundle (ap) { + members (ap_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + pin (cout) { + direction : output; + } + pin (q) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock_0"; + intrinsic_rise : 1.250; + intrinsic_fall : 1.250; + } + } + pin (q_fixed) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock_0"; + intrinsic_rise : 1.250; + intrinsic_fall : 1.250; + } + } + } + cell (controlcell2) { + pin (clock) { + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + pin (reset) { + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock"; + intrinsic_fall : 0.000; + } + } + pin (busclk) { + direction : input; + clock : true; + } + pin (control_0) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_1) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_2) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_3) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_4) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_5) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_6) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_7) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + } + cell (datapathcell2) { + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 2.10; + intrinsic_fall : 2.10; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (reset) { + direction : input; + } + pin (cs_addr_0) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 11.52; + intrinsic_fall : 11.52; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 5.31; + intrinsic_fall : 5.31; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 10.97; + intrinsic_fall : 10.97; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (cs_addr_1) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 11.52; + intrinsic_fall : 11.52; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 5.31; + intrinsic_fall : 5.31; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 10.97; + intrinsic_fall : 10.97; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (cs_addr_2) { + direction : input; + } + pin (route_si) { + direction : input; + } + pin (route_ci) { + direction : input; + } + pin (f0_load) { + direction : input; + } + pin (f1_load) { + direction : input; + } + pin (d0_load) { + direction : input; + } + pin (d1_load) { + direction : input; + } + pin (p_in_0) { + direction : input; + } + pin (p_in_1) { + direction : input; + } + pin (p_in_2) { + direction : input; + } + pin (p_in_3) { + direction : input; + } + pin (p_in_4) { + direction : input; + } + pin (p_in_5) { + direction : input; + } + pin (p_in_6) { + direction : input; + } + pin (p_in_7) { + direction : input; + } + pin (ce0i) { + direction : input; + } + pin (cl0i) { + direction : input; + } + pin (z0i) { + direction : input; + } + pin (ff0i) { + direction : input; + } + pin (ce1i) { + direction : input; + } + pin (cl1i) { + direction : input; + } + pin (z1i) { + direction : input; + } + pin (ff1i) { + direction : input; + } + pin (cap0i) { + direction : input; + } + pin (cap1i) { + direction : input; + } + pin (ci) { + direction : input; + } + pin (sir) { + direction : input; + } + pin (cfbi) { + direction : input; + } + pin (sil) { + direction : input; + } + pin (cmsbi) { + direction : input; + } + pin (busclk) { + direction : input; + clock : true; + } + pin (clock) { + direction : input; + clock : true; + } + pin (ce0_reg) { + direction : output; + } + pin (cl0_reg) { + direction : output; + } + pin (z0_reg) { + direction : output; + } + pin (f0_reg) { + direction : output; + } + pin (ce1_reg) { + direction : output; + } + pin (cl1_reg) { + direction : output; + } + pin (z1_reg) { + direction : output; + } + pin (f1_reg) { + direction : output; + } + pin (ov_msb_reg) { + direction : output; + } + pin (co_msb_reg) { + direction : output; + } + pin (cmsb_reg) { + direction : output; + } + pin (so_reg) { + direction : output; + } + pin (f0_bus_stat_reg) { + direction : output; + } + pin (f0_blk_stat_reg) { + direction : output; + } + pin (f1_bus_stat_reg) { + direction : output; + } + pin (f1_blk_stat_reg) { + direction : output; + } + pin (ce0_comb) { + direction : output; + } + pin (cl0_comb) { + direction : output; + } + pin (z0_comb) { + direction : output; + } + pin (f0_comb) { + direction : output; + } + pin (ce1_comb) { + direction : output; + } + pin (cl1_comb) { + direction : output; + } + pin (z1_comb) { + direction : output; + } + pin (f1_comb) { + direction : output; + } + pin (ov_msb_comb) { + direction : output; + } + pin (co_msb_comb) { + direction : output; + } + pin (cmsb_comb) { + direction : output; + } + pin (so_comb) { + direction : output; + } + pin (f0_bus_stat_comb) { + direction : output; + } + pin (f0_blk_stat_comb) { + direction : output; + } + pin (f1_bus_stat_comb) { + direction : output; + } + pin (f1_blk_stat_comb) { + direction : output; + } + pin (p_out_0) { + direction : output; + } + pin (p_out_1) { + direction : output; + } + pin (p_out_2) { + direction : output; + } + pin (p_out_3) { + direction : output; + } + pin (p_out_4) { + direction : output; + } + pin (p_out_5) { + direction : output; + } + pin (p_out_6) { + direction : output; + } + pin (p_out_7) { + direction : output; + } + pin (ce0) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.54; + intrinsic_fall : 3.54; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.54; + intrinsic_fall : 3.54; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 1.90; + intrinsic_fall : 1.90; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 1.90; + intrinsic_fall : 1.90; + } + } + pin (cl0) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 4.14; + intrinsic_fall : 4.14; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 4.14; + intrinsic_fall : 4.14; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.14; + intrinsic_fall : 2.14; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.14; + intrinsic_fall : 2.14; + } + } + pin (z0) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.32; + intrinsic_fall : 2.32; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 1.74; + intrinsic_fall : 1.74; + } + } + pin (ff0) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.73; + intrinsic_fall : 2.73; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 1.32; + intrinsic_fall : 1.32; + } + } + pin (ce1) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.51; + intrinsic_fall : 3.51; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.51; + intrinsic_fall : 3.51; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.03; + intrinsic_fall : 2.03; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.03; + intrinsic_fall : 2.03; + } + } + pin (cl1) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 4.90; + intrinsic_fall : 4.90; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 4.90; + intrinsic_fall : 4.90; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.26; + intrinsic_fall : 2.26; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.26; + intrinsic_fall : 2.26; + } + } + pin (z1) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.29; + intrinsic_fall : 2.29; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 1.53; + intrinsic_fall : 1.53; + } + } + pin (ff1) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.17; + intrinsic_fall : 2.17; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 1.18; + intrinsic_fall : 1.18; + } + } + pin (cap0) { + direction : output; + } + pin (cap1) { + direction : output; + } + pin (co_msb) { + direction : output; + timing () { + timing_type : combinational; + related_pin : "cs_addr_0"; + intrinsic_rise : 9.71; + intrinsic_fall : 9.71; + } + timing () { + timing_type : combinational; + related_pin : "cs_addr_1"; + intrinsic_rise : 9.71; + intrinsic_fall : 9.71; + } + timing () { + timing_type : combinational; + related_pin : "cs_addr_0"; + intrinsic_rise : 9.71; + intrinsic_fall : 9.71; + } + timing () { + timing_type : combinational; + related_pin : "cs_addr_1"; + intrinsic_rise : 9.71; + intrinsic_fall : 9.71; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 7.21; + intrinsic_fall : 7.21; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.21; + intrinsic_fall : 3.21; + } + } + pin (sol_msb) { + direction : output; + } + pin (cfbo) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 4.84; + intrinsic_fall : 4.84; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.63; + intrinsic_fall : 3.63; + } + } + pin (sor) { + direction : output; + } + pin (cmsbo) { + direction : output; + } + } + cell (datapathcell3) { + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 2.10; + intrinsic_fall : 2.10; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (reset) { + direction : input; + } + pin (cs_addr_0) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 11.52; + intrinsic_fall : 11.52; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 5.31; + intrinsic_fall : 5.31; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 10.97; + intrinsic_fall : 10.97; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (cs_addr_1) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 11.52; + intrinsic_fall : 11.52; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 5.31; + intrinsic_fall : 5.31; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 10.97; + intrinsic_fall : 10.97; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (cs_addr_2) { + direction : input; + } + pin (route_si) { + direction : input; + } + pin (route_ci) { + direction : input; + } + pin (f0_load) { + direction : input; + } + pin (f1_load) { + direction : input; + } + pin (d0_load) { + direction : input; + } + pin (d1_load) { + direction : input; + } + pin (p_in_0) { + direction : input; + } + pin (p_in_1) { + direction : input; + } + pin (p_in_2) { + direction : input; + } + pin (p_in_3) { + direction : input; + } + pin (p_in_4) { + direction : input; + } + pin (p_in_5) { + direction : input; + } + pin (p_in_6) { + direction : input; + } + pin (p_in_7) { + direction : input; + } + pin (ce0i) { + direction : input; + } + pin (cl0i) { + direction : input; + } + pin (z0i) { + direction : input; + } + pin (ff0i) { + direction : input; + } + pin (ce1i) { + direction : input; + } + pin (cl1i) { + direction : input; + } + pin (z1i) { + direction : input; + } + pin (ff1i) { + direction : input; + } + pin (cap0i) { + direction : input; + } + pin (cap1i) { + direction : input; + } + pin (ci) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 5.09; + intrinsic_fall : 5.09; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 4.57; + intrinsic_fall : 4.57; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (sir) { + direction : input; + } + pin (cfbi) { + direction : input; + } + pin (sil) { + direction : input; + } + pin (cmsbi) { + direction : input; + } + pin (busclk) { + direction : input; + clock : true; + } + pin (clock) { + direction : input; + clock : true; + } + pin (ce0_reg) { + direction : output; + } + pin (cl0_reg) { + direction : output; + } + pin (z0_reg) { + direction : output; + } + pin (f0_reg) { + direction : output; + } + pin (ce1_reg) { + direction : output; + } + pin (cl1_reg) { + direction : output; + } + pin (z1_reg) { + direction : output; + } + pin (f1_reg) { + direction : output; + } + pin (ov_msb_reg) { + direction : output; + } + pin (co_msb_reg) { + direction : output; + } + pin (cmsb_reg) { + direction : output; + } + pin (so_reg) { + direction : output; + } + pin (f0_bus_stat_reg) { + direction : output; + } + pin (f0_blk_stat_reg) { + direction : output; + } + pin (f1_bus_stat_reg) { + direction : output; + } + pin (f1_blk_stat_reg) { + direction : output; + } + pin (ce0_comb) { + direction : output; + } + pin (cl0_comb) { + direction : output; + } + pin (z0_comb) { + direction : output; + timing () { + timing_type : combinational; + related_pin : "z0i"; + intrinsic_rise : 2.96; + intrinsic_fall : 2.96; + } + timing () { + timing_type : combinational; + related_pin : "z0i"; + intrinsic_rise : 2.74; + intrinsic_fall : 2.74; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.85; + intrinsic_fall : 3.85; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.27; + intrinsic_fall : 3.27; + } + } + pin (f0_comb) { + direction : output; + } + pin (ce1_comb) { + direction : output; + } + pin (cl1_comb) { + direction : output; + } + pin (z1_comb) { + direction : output; + } + pin (f1_comb) { + direction : output; + } + pin (ov_msb_comb) { + direction : output; + } + pin (co_msb_comb) { + direction : output; + } + pin (cmsb_comb) { + direction : output; + } + pin (so_comb) { + direction : output; + } + pin (f0_bus_stat_comb) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 7.21; + intrinsic_fall : 7.21; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 7.21; + intrinsic_fall : 7.21; + } + } + pin (f0_blk_stat_comb) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 7.34; + intrinsic_fall : 7.34; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 7.34; + intrinsic_fall : 7.34; + } + } + pin (f1_bus_stat_comb) { + direction : output; + } + pin (f1_blk_stat_comb) { + direction : output; + } + pin (p_out_0) { + direction : output; + } + pin (p_out_1) { + direction : output; + } + pin (p_out_2) { + direction : output; + } + pin (p_out_3) { + direction : output; + } + pin (p_out_4) { + direction : output; + } + pin (p_out_5) { + direction : output; + } + pin (p_out_6) { + direction : output; + } + pin (p_out_7) { + direction : output; + } + pin (ce0) { + direction : output; + } + pin (cl0) { + direction : output; + } + pin (z0) { + direction : output; + } + pin (ff0) { + direction : output; + } + pin (ce1) { + direction : output; + } + pin (cl1) { + direction : output; + } + pin (z1) { + direction : output; + } + pin (ff1) { + direction : output; + } + pin (cap0) { + direction : output; + } + pin (cap1) { + direction : output; + } + pin (co_msb) { + direction : output; + } + pin (sol_msb) { + direction : output; + } + pin (cfbo) { + direction : output; + } + pin (sor) { + direction : output; + } + pin (cmsbo) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.32; + intrinsic_fall : 3.32; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.25; + intrinsic_fall : 2.25; + } + } + } + cell (macrocell26) { + pin (cin) { + direction : input; + } + bundle (cpt0) { + members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); + direction : input; + } + bundle (cpt1) { + members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); + direction : input; + } + bundle (main) { + members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); + direction : input; + } + bundle (clock) { + members (clock_0); + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (ar) { + members (ar_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + bundle (ap) { + members (ap_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + pin (cout) { + direction : output; + } + pin (q) { + direction : output; + function : "((main_0 * main_1)) ^ 0"; + timing () { + timing_type : combinational; + related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; + intrinsic_rise : 3.350; + intrinsic_fall : 3.350; + } + } + pin (q_fixed) { + direction : output; + function : "((main_0 * main_1)) ^ 0"; + timing () { + timing_type : combinational; + related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; + intrinsic_rise : 3.350; + intrinsic_fall : 3.350; + } + } + } + cell (macrocell27) { + pin (cin) { + direction : input; + } + bundle (cpt0) { + members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); + direction : input; + } + bundle (cpt1) { + members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); + direction : input; + } + bundle (main) { + members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 3.510; + intrinsic_fall : 3.510; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (clock) { + members (clock_0); + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (ar) { + members (ar_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + bundle (ap) { + members (ap_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + pin (cout) { + direction : output; + } + pin (q) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock_0"; + intrinsic_rise : 1.250; + intrinsic_fall : 1.250; + } + } + pin (q_fixed) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock_0"; + intrinsic_rise : 1.250; + intrinsic_fall : 1.250; + } + } + } + cell (macrocell28) { + pin (cin) { + direction : input; + } + bundle (cpt0) { + members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); + direction : input; + } + bundle (cpt1) { + members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); + direction : input; + } + bundle (main) { + members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 3.510; + intrinsic_fall : 3.510; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (clock) { + members (clock_0); + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (ar) { + members (ar_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + bundle (ap) { + members (ap_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + pin (cout) { + direction : output; + } + pin (q) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock_0"; + intrinsic_rise : 1.250; + intrinsic_fall : 1.250; + } + } + pin (q_fixed) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock_0"; + intrinsic_rise : 1.250; + intrinsic_fall : 1.250; + } + } + } + cell (macrocell29) { + pin (cin) { + direction : input; + } + bundle (cpt0) { + members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); + direction : input; + } + bundle (cpt1) { + members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); + direction : input; + } + bundle (main) { + members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); + direction : input; + } + bundle (clock) { + members (clock_0); + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (ar) { + members (ar_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + bundle (ap) { + members (ap_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + pin (cout) { + direction : output; + } + pin (q) { + direction : output; + function : "((!main_0 * !main_1 * !main_2) + (!main_0 * !main_1 * main_3)) ^ 1"; + timing () { + timing_type : combinational; + related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; + intrinsic_rise : 3.350; + intrinsic_fall : 3.350; + } + } + pin (q_fixed) { direction : output; function : "((!main_0 * !main_1 * !main_2) + (!main_0 * !main_1 * main_3)) ^ 1"; timing () { @@ -3875,7 +5734,7 @@ library (timing) { } } } - cell (datapathcell2) { + cell (datapathcell4) { pin (clk_en) { direction : input; } @@ -4260,7 +6119,7 @@ library (timing) { direction : output; } } - cell (statusicell3) { + cell (statusicell4) { pin (clock) { direction : input; clock : true; @@ -4427,7 +6286,7 @@ library (timing) { } } } - cell (datapathcell3) { + cell (datapathcell5) { pin (clk_en) { direction : input; } @@ -4752,7 +6611,7 @@ library (timing) { direction : output; } } - cell (macrocell25) { + cell (macrocell30) { pin (cin) { direction : input; } @@ -4850,7 +6709,7 @@ library (timing) { } } } - cell (macrocell26) { + cell (macrocell31) { pin (cin) { direction : input; } @@ -4938,7 +6797,7 @@ library (timing) { } } } - cell (macrocell27) { + cell (macrocell32) { pin (cin) { direction : input; } @@ -5036,7 +6895,7 @@ library (timing) { } } } - cell (macrocell28) { + cell (macrocell33) { pin (cin) { direction : input; } @@ -5134,7 +6993,7 @@ library (timing) { } } } - cell (macrocell29) { + cell (macrocell34) { pin (cin) { direction : input; } @@ -5232,7 +7091,7 @@ library (timing) { } } } - cell (macrocell30) { + cell (macrocell35) { pin (cin) { direction : input; } @@ -5320,7 +7179,7 @@ library (timing) { } } } - cell (macrocell31) { + cell (macrocell36) { pin (cin) { direction : input; } @@ -5408,7 +7267,7 @@ library (timing) { } } } - cell (macrocell32) { + cell (macrocell37) { pin (cin) { direction : input; } @@ -5506,7 +7365,7 @@ library (timing) { } } } - cell (iocell13) { + cell (iocell14) { pin (in_clock) { direction : input; clock : true; @@ -5574,7 +7433,7 @@ library (timing) { } } } - cell (iocell14) { + cell (iocell15) { pin (in_clock) { direction : input; clock : true; @@ -5642,7 +7501,7 @@ library (timing) { } } } - cell (iocell15) { + cell (iocell16) { pin (in_clock) { direction : input; clock : true; diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_p.pco b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_p.pco index 958ab94..cf8d711 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_p.pco +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_p.pco @@ -1,59 +1,70 @@ dont_use_io iocell 1 0 dont_use_io iocell 1 1 dont_use_io iocell 1 3 -set_location "\UART_1:BUART:tx_state_2\" macrocell 3 5 0 1 -set_location "\SPIM:BSPIM:tx_status_4\" macrocell 2 3 0 2 -set_location "\SPIM:BSPIM:state_1\" macrocell 2 3 0 1 -set_location "\SPIM:BSPIM:RxStsReg\" statusicell 2 5 4 +set_location "\UART_1:BUART:tx_state_2\" macrocell 3 3 0 1 +set_location "Net_439" macrocell 3 5 0 1 +set_location "\SPIM:BSPIM:tx_status_4\" macrocell 2 5 0 2 +set_location "\SPIM:BSPIM:state_1\" macrocell 2 5 0 1 +set_location "\SPIM:BSPIM:RxStsReg\" statusicell 3 4 4 set_location "\SPIM:BSPIM:state_0\" macrocell 2 4 1 3 -set_location "\UART_1:BUART:sTX:TxShifter:u0\" datapathcell 3 5 2 -set_location "\SPIM:BSPIM:ld_ident\" macrocell 3 3 0 1 -set_location "\SPIM:BSPIM:cnt_enable\" macrocell 2 3 0 0 -set_location "\UART_1:BUART:tx_status_0\" macrocell 2 5 0 3 -set_location "\UART_1:BUART:txn\" macrocell 3 5 0 0 +set_location "\UART_1:BUART:sTX:TxShifter:u0\" datapathcell 2 3 2 +set_location "\SPIM:BSPIM:ld_ident\" macrocell 2 5 1 1 +set_location "\SPIM:BSPIM:cnt_enable\" macrocell 2 5 0 0 +set_location "\UART_1:BUART:tx_status_0\" macrocell 2 3 0 3 +set_location "\UART_1:BUART:txn\" macrocell 3 3 0 0 set_location "\SPIM:BSPIM:sR8:Dp:u0\" datapathcell 2 4 2 set_location "\SPIM:BSPIM:tx_status_0\" macrocell 2 4 1 2 -set_location "\UART_1:BUART:tx_status_2\" macrocell 3 4 0 2 -set_location "Net_439" macrocell 3 3 0 0 +set_location "\Timer_1:TimerUDB:status_tc\" macrocell 2 0 0 2 set_location "\SPIM:BSPIM:state_2\" macrocell 2 4 1 1 -set_location "Net_479" macrocell 2 3 1 1 -set_location "\SPIM:BSPIM:mosi_hs_reg\" macrocell 3 5 1 0 -set_location "\UART_1:BUART:counter_load_not\" macrocell 3 5 1 1 -set_location "\UART_1:BUART:tx_bitclk\" macrocell 2 5 1 0 -set_location "\SPIM:BSPIM:TxStsReg\" statusicell 2 3 4 -set_location "\UART_1:BUART:tx_state_1\" macrocell 2 5 0 2 -set_location "\SPIM:BSPIM:mosi_from_dp_reg\" macrocell 3 4 0 0 -set_location "Net_422" macrocell 3 3 1 0 -set_location "Net_30" macrocell 3 3 0 2 -set_location "\UART_1:BUART:tx_state_0\" macrocell 2 5 0 1 -set_location "\UART_1:BUART:sTX:TxSts\" statusicell 3 4 4 -set_location "\SPIM:BSPIM:load_cond\" macrocell 2 3 1 0 +set_location "\Timer_1:TimerUDB:timer_enable\" macrocell 2 0 0 0 +set_location "Net_479" macrocell 3 5 0 0 +set_location "\SPIM:BSPIM:mosi_hs_reg\" macrocell 3 3 1 0 +set_location "\UART_1:BUART:counter_load_not\" macrocell 3 3 1 1 +set_location "Net_30" macrocell 3 5 0 2 +set_location "\SPIM:BSPIM:TxStsReg\" statusicell 2 5 4 +set_location "\UART_1:BUART:tx_state_1\" macrocell 3 0 1 0 +set_location "\UART_1:BUART:tx_bitclk_enable_pre\" macrocell 2 3 1 1 +set_location "Net_234" macrocell 3 4 0 2 +set_location "Net_419" macrocell 3 5 0 3 +set_location "Net_428" macrocell 3 5 1 2 +set_location "\Timer_1:TimerUDB:nrstSts:stsreg\" statusicell 2 0 4 +set_location "\Timer_1:TimerUDB:run_mode\" macrocell 2 0 0 3 +set_location "\UART_1:BUART:tx_state_0\" macrocell 2 3 0 1 +set_location "Net_422" macrocell 3 5 1 0 +set_location "\UART_1:BUART:sTX:TxSts\" statusicell 2 3 4 +set_location "\SPIM:BSPIM:load_cond\" macrocell 2 5 1 0 set_location "\SPIM:BSPIM:BitCounter\" count7cell 2 4 7 set_location "\SPIM:BSPIM:mosi_pre_reg\" macrocell 2 4 0 0 -set_location "\SPIM:BSPIM:dpcounter_one\" macrocell 2 3 1 3 -set_location "\SPIM:BSPIM:load_rx_data\" macrocell 2 3 1 2 -set_location "\SPIM:BSPIM:rx_status_6\" macrocell 2 5 0 0 -set_location "\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\" datapathcell 2 5 2 -set_location "Net_428" macrocell 3 3 1 2 -set_location "\UART_1:BUART:tx_bitclk_enable_pre\" macrocell 2 5 1 1 +set_location "\SPIM:BSPIM:dpcounter_one\" macrocell 2 5 1 3 +set_location "\SPIM:BSPIM:load_rx_data\" macrocell 2 5 1 2 +set_location "\UART_1:BUART:tx_status_2\" macrocell 2 3 1 3 +set_location "\Timer_1:TimerUDB:sT16:timerdp:u1\" datapathcell 3 0 2 +set_location "\Timer_1:TimerUDB:trig_disable\" macrocell 2 0 0 1 +set_location "\SPIM:BSPIM:rx_status_6\" macrocell 2 3 0 0 +set_location "Net_585" macrocell 3 5 1 3 +set_location "\UART_1:BUART:tx_bitclk\" macrocell 2 3 1 0 +set_location "Net_425" macrocell 3 5 1 1 +set_location "\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\" datapathcell 3 3 2 +set_location "\Timer_1:TimerUDB:sT16:timerdp:u0\" datapathcell 2 0 2 set_location "\SPIM:BSPIM:is_spi_done\" macrocell 2 4 1 0 -set_location "Net_425" macrocell 3 3 1 1 -set_location "Net_419" macrocell 3 3 0 3 -set_location "Net_234" macrocell 3 4 0 1 +set_location "\SPIM:BSPIM:mosi_from_dp_reg\" macrocell 3 4 0 0 set_io "\LCD:LCDPort(4)\" iocell 2 4 +set_location "ClockBlock" clockblockcell -1 -1 0 +set_location "\SS:Async:ctrl_reg\" controlcell 3 5 6 set_io "m_miso_pin(0)" iocell 0 0 set_io "Pin_4(0)" iocell 3 3 +set_location "\Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\" controlcell 2 0 6 set_io "\LCD:LCDPort(6)\" iocell 2 6 set_io "\LCD:LCDPort(5)\" iocell 2 5 set_io "\LCD:LCDPort(2)\" iocell 2 2 set_io "Tx_1(0)" iocell 3 7 set_io "m_sclk_pin(0)" iocell 0 6 set_io "Pin_2(0)" iocell 3 1 +set_location "ClockBlock_1k__SYNC" synccell 3 0 5 0 set_io "Pin_1(0)" iocell 3 0 -set_location "ClockBlock" clockblockcell -1 -1 0 set_io "m_mosi_pin(0)" iocell 0 5 set_io "\LCD:LCDPort(1)\" iocell 2 1 set_io "\LCD:LCDPort(0)\" iocell 2 0 set_io "\LCD:LCDPort(3)\" iocell 2 3 set_io "Pin_3(0)" iocell 3 2 -set_location "\SS:Async:ctrl_reg\" controlcell 3 3 6 +set_io "Pin_5(0)" iocell 3 4 diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_p.vh2 b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_p.vh2 index 588b5a8..218d7af 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_p.vh2 +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_p.vh2 @@ -1,5 +1,5 @@ -- Project: PSOC5_SPI_LSM303D --- Generated: 03/22/2013 10:33:26 +-- Generated: 07/25/2013 16:48:56 -- ENTITY PSOC5_SPI_LSM303D IS @@ -8,6 +8,7 @@ ENTITY PSOC5_SPI_LSM303D IS Pin_2(0)_PAD : OUT std_ulogic; Pin_3(0)_PAD : OUT std_ulogic; Pin_4(0)_PAD : OUT std_ulogic; + Pin_5(0)_PAD : OUT std_ulogic; Tx_1(0)_PAD : OUT std_ulogic; \LCD:LCDPort(0)_PAD\ : OUT std_ulogic; \LCD:LCDPort(1)_PAD\ : OUT std_ulogic; @@ -31,6 +32,7 @@ END PSOC5_SPI_LSM303D; ARCHITECTURE __DEFAULT__ OF PSOC5_SPI_LSM303D IS SIGNAL ClockBlock_100k : bit; SIGNAL ClockBlock_1k : bit; + SIGNAL ClockBlock_1k__SYNC_OUT : bit; SIGNAL ClockBlock_32k : bit; SIGNAL ClockBlock_BUS_CLK : bit; ATTRIBUTE global_signal OF ClockBlock_BUS_CLK : SIGNAL IS true; @@ -53,10 +55,12 @@ ARCHITECTURE __DEFAULT__ OF PSOC5_SPI_LSM303D IS SIGNAL Net_428 : bit; SIGNAL Net_439 : bit; SIGNAL Net_479 : bit; + SIGNAL Net_585 : bit; SIGNAL Pin_1(0)__PA : bit; SIGNAL Pin_2(0)__PA : bit; SIGNAL Pin_3(0)__PA : bit; SIGNAL Pin_4(0)__PA : bit; + SIGNAL Pin_5(0)__PA : bit; SIGNAL Tx_1(0)__PA : bit; SIGNAL \\\LCD:LCDPort(0)\\__PA\ : bit; SIGNAL \\\LCD:LCDPort(1)\\__PA\ : bit; @@ -96,12 +100,26 @@ ARCHITECTURE __DEFAULT__ OF PSOC5_SPI_LSM303D IS SIGNAL \SPIM:Net_276\ : bit; ATTRIBUTE global_signal OF \SPIM:Net_276\ : SIGNAL IS true; SIGNAL \SPIM:Net_276_local\ : bit; - SIGNAL \SS:control_2\ : bit; SIGNAL \SS:control_3\ : bit; SIGNAL \SS:control_4\ : bit; SIGNAL \SS:control_5\ : bit; SIGNAL \SS:control_6\ : bit; SIGNAL \SS:control_7\ : bit; + SIGNAL \Timer_1:TimerUDB:control_0\ : bit; + SIGNAL \Timer_1:TimerUDB:control_1\ : bit; + SIGNAL \Timer_1:TimerUDB:control_2\ : bit; + SIGNAL \Timer_1:TimerUDB:control_3\ : bit; + SIGNAL \Timer_1:TimerUDB:control_4\ : bit; + SIGNAL \Timer_1:TimerUDB:control_5\ : bit; + SIGNAL \Timer_1:TimerUDB:control_6\ : bit; + SIGNAL \Timer_1:TimerUDB:control_7\ : bit; + SIGNAL \Timer_1:TimerUDB:per_zero\ : bit; + SIGNAL \Timer_1:TimerUDB:run_mode\ : bit; + SIGNAL \Timer_1:TimerUDB:status_2\ : bit; + SIGNAL \Timer_1:TimerUDB:status_3\ : bit; + SIGNAL \Timer_1:TimerUDB:status_tc\ : bit; + SIGNAL \Timer_1:TimerUDB:timer_enable\ : bit; + SIGNAL \Timer_1:TimerUDB:trig_disable\ : bit; SIGNAL \UART_1:BUART:counter_load_not\ : bit; SIGNAL \UART_1:BUART:tx_bitclk\ : bit; SIGNAL \UART_1:BUART:tx_bitclk_dp\ : bit; @@ -125,10 +143,24 @@ ARCHITECTURE __DEFAULT__ OF PSOC5_SPI_LSM303D IS SIGNAL m_sclk_pin(0)__PA : bit; SIGNAL mywire_1_0 : bit; SIGNAL mywire_1_1 : bit; + SIGNAL mywire_1_2 : bit; SIGNAL tmpOE__m_miso_pin_net_0 : bit; ATTRIBUTE POWER OF tmpOE__m_miso_pin_net_0 : SIGNAL IS true; SIGNAL zero : bit; ATTRIBUTE GROUND OF zero : SIGNAL IS true; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.ce0__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.cl0__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.z0__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.ff0__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.ce1__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.cl1__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.z1__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.ff1__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.co_msb__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.sol_msb__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.cfbo__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u1.sor__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u1.cmsbo__sig\ : bit; ATTRIBUTE lib_model OF Net_234 : LABEL IS "macrocell1"; ATTRIBUTE lib_model OF Net_30 : LABEL IS "macrocell2"; ATTRIBUTE lib_model OF Net_419 : LABEL IS "macrocell3"; @@ -137,6 +169,7 @@ ARCHITECTURE __DEFAULT__ OF PSOC5_SPI_LSM303D IS ATTRIBUTE lib_model OF Net_428 : LABEL IS "macrocell6"; ATTRIBUTE lib_model OF Net_439 : LABEL IS "macrocell7"; ATTRIBUTE lib_model OF Net_479 : LABEL IS "macrocell8"; + ATTRIBUTE lib_model OF Net_585 : LABEL IS "macrocell9"; ATTRIBUTE lib_model OF Pin_1(0) : LABEL IS "iocell1"; ATTRIBUTE Location OF Pin_1(0) : LABEL IS "P3[0]"; ATTRIBUTE lib_model OF Pin_2(0) : LABEL IS "iocell2"; @@ -145,58 +178,68 @@ ARCHITECTURE __DEFAULT__ OF PSOC5_SPI_LSM303D IS ATTRIBUTE Location OF Pin_3(0) : LABEL IS "P3[2]"; ATTRIBUTE lib_model OF Pin_4(0) : LABEL IS "iocell4"; ATTRIBUTE Location OF Pin_4(0) : LABEL IS "P3[3]"; - ATTRIBUTE lib_model OF Tx_1(0) : LABEL IS "iocell5"; + ATTRIBUTE lib_model OF Pin_5(0) : LABEL IS "iocell5"; + ATTRIBUTE Location OF Pin_5(0) : LABEL IS "P3[4]"; + ATTRIBUTE lib_model OF Tx_1(0) : LABEL IS "iocell6"; ATTRIBUTE Location OF Tx_1(0) : LABEL IS "P3[7]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(0)\ : LABEL IS "iocell6"; + ATTRIBUTE lib_model OF \LCD:LCDPort(0)\ : LABEL IS "iocell7"; ATTRIBUTE Location OF \LCD:LCDPort(0)\ : LABEL IS "P2[0]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(1)\ : LABEL IS "iocell7"; + ATTRIBUTE lib_model OF \LCD:LCDPort(1)\ : LABEL IS "iocell8"; ATTRIBUTE Location OF \LCD:LCDPort(1)\ : LABEL IS "P2[1]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(2)\ : LABEL IS "iocell8"; + ATTRIBUTE lib_model OF \LCD:LCDPort(2)\ : LABEL IS "iocell9"; ATTRIBUTE Location OF \LCD:LCDPort(2)\ : LABEL IS "P2[2]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(3)\ : LABEL IS "iocell9"; + ATTRIBUTE lib_model OF \LCD:LCDPort(3)\ : LABEL IS "iocell10"; ATTRIBUTE Location OF \LCD:LCDPort(3)\ : LABEL IS "P2[3]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(4)\ : LABEL IS "iocell10"; + ATTRIBUTE lib_model OF \LCD:LCDPort(4)\ : LABEL IS "iocell11"; ATTRIBUTE Location OF \LCD:LCDPort(4)\ : LABEL IS "P2[4]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(5)\ : LABEL IS "iocell11"; + ATTRIBUTE lib_model OF \LCD:LCDPort(5)\ : LABEL IS "iocell12"; ATTRIBUTE Location OF \LCD:LCDPort(5)\ : LABEL IS "P2[5]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(6)\ : LABEL IS "iocell12"; + ATTRIBUTE lib_model OF \LCD:LCDPort(6)\ : LABEL IS "iocell13"; ATTRIBUTE Location OF \LCD:LCDPort(6)\ : LABEL IS "P2[6]"; ATTRIBUTE lib_model OF \SPIM:BSPIM:RxStsReg\ : LABEL IS "statusicell1"; ATTRIBUTE lib_model OF \SPIM:BSPIM:TxStsReg\ : LABEL IS "statusicell2"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:cnt_enable\ : LABEL IS "macrocell9"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:dpcounter_one\ : LABEL IS "macrocell10"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:is_spi_done\ : LABEL IS "macrocell11"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:ld_ident\ : LABEL IS "macrocell12"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:load_cond\ : LABEL IS "macrocell13"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:load_rx_data\ : LABEL IS "macrocell14"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:mosi_from_dp_reg\ : LABEL IS "macrocell15"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:mosi_hs_reg\ : LABEL IS "macrocell16"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:mosi_pre_reg\ : LABEL IS "macrocell17"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:rx_status_6\ : LABEL IS "macrocell18"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:cnt_enable\ : LABEL IS "macrocell10"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:dpcounter_one\ : LABEL IS "macrocell11"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:is_spi_done\ : LABEL IS "macrocell12"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:ld_ident\ : LABEL IS "macrocell13"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:load_cond\ : LABEL IS "macrocell14"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:load_rx_data\ : LABEL IS "macrocell15"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:mosi_from_dp_reg\ : LABEL IS "macrocell16"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:mosi_hs_reg\ : LABEL IS "macrocell17"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:mosi_pre_reg\ : LABEL IS "macrocell18"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:rx_status_6\ : LABEL IS "macrocell19"; ATTRIBUTE lib_model OF \SPIM:BSPIM:sR8:Dp:u0\ : LABEL IS "datapathcell1"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:state_0\ : LABEL IS "macrocell19"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:state_1\ : LABEL IS "macrocell20"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:state_2\ : LABEL IS "macrocell21"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:tx_status_0\ : LABEL IS "macrocell22"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:tx_status_4\ : LABEL IS "macrocell23"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:state_0\ : LABEL IS "macrocell20"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:state_1\ : LABEL IS "macrocell21"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:state_2\ : LABEL IS "macrocell22"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:tx_status_0\ : LABEL IS "macrocell23"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:tx_status_4\ : LABEL IS "macrocell24"; ATTRIBUTE lib_model OF \SS:Async:ctrl_reg\ : LABEL IS "controlcell1"; - ATTRIBUTE lib_model OF \UART_1:BUART:counter_load_not\ : LABEL IS "macrocell24"; - ATTRIBUTE lib_model OF \UART_1:BUART:sTX:TxShifter:u0\ : LABEL IS "datapathcell2"; - ATTRIBUTE lib_model OF \UART_1:BUART:sTX:TxSts\ : LABEL IS "statusicell3"; - ATTRIBUTE lib_model OF \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\ : LABEL IS "datapathcell3"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_bitclk\ : LABEL IS "macrocell25"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_bitclk_enable_pre\ : LABEL IS "macrocell26"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_state_0\ : LABEL IS "macrocell27"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_state_1\ : LABEL IS "macrocell28"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_state_2\ : LABEL IS "macrocell29"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_status_0\ : LABEL IS "macrocell30"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_status_2\ : LABEL IS "macrocell31"; - ATTRIBUTE lib_model OF \UART_1:BUART:txn\ : LABEL IS "macrocell32"; - ATTRIBUTE lib_model OF m_miso_pin(0) : LABEL IS "iocell13"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:nrstSts:stsreg\ : LABEL IS "statusicell3"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:run_mode\ : LABEL IS "macrocell25"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\ : LABEL IS "controlcell2"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:sT16:timerdp:u0\ : LABEL IS "datapathcell2"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:sT16:timerdp:u1\ : LABEL IS "datapathcell3"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:status_tc\ : LABEL IS "macrocell26"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:timer_enable\ : LABEL IS "macrocell27"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:trig_disable\ : LABEL IS "macrocell28"; + ATTRIBUTE lib_model OF \UART_1:BUART:counter_load_not\ : LABEL IS "macrocell29"; + ATTRIBUTE lib_model OF \UART_1:BUART:sTX:TxShifter:u0\ : LABEL IS "datapathcell4"; + ATTRIBUTE lib_model OF \UART_1:BUART:sTX:TxSts\ : LABEL IS "statusicell4"; + ATTRIBUTE lib_model OF \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\ : LABEL IS "datapathcell5"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_bitclk\ : LABEL IS "macrocell30"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_bitclk_enable_pre\ : LABEL IS "macrocell31"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_state_0\ : LABEL IS "macrocell32"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_state_1\ : LABEL IS "macrocell33"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_state_2\ : LABEL IS "macrocell34"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_status_0\ : LABEL IS "macrocell35"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_status_2\ : LABEL IS "macrocell36"; + ATTRIBUTE lib_model OF \UART_1:BUART:txn\ : LABEL IS "macrocell37"; + ATTRIBUTE lib_model OF m_miso_pin(0) : LABEL IS "iocell14"; ATTRIBUTE Location OF m_miso_pin(0) : LABEL IS "P0[0]"; - ATTRIBUTE lib_model OF m_mosi_pin(0) : LABEL IS "iocell14"; + ATTRIBUTE lib_model OF m_mosi_pin(0) : LABEL IS "iocell15"; ATTRIBUTE Location OF m_mosi_pin(0) : LABEL IS "P0[5]"; - ATTRIBUTE lib_model OF m_sclk_pin(0) : LABEL IS "iocell15"; + ATTRIBUTE lib_model OF m_sclk_pin(0) : LABEL IS "iocell16"; ATTRIBUTE Location OF m_sclk_pin(0) : LABEL IS "P0[6]"; COMPONENT abufcell END COMPONENT; @@ -1143,6 +1186,15 @@ BEGIN dclk_glb_1 => Net_191, dclk_1 => Net_191_local); + ClockBlock_1k__SYNC:synccell + GENERIC MAP( + clk_inv => '0') + PORT MAP( + in => ClockBlock_1k, + out => ClockBlock_1k__SYNC_OUT, + clock => ClockBlock_BUS_CLK, + clk_en => open); + Net_234:macrocell GENERIC MAP( eqn_main => "(!main_0)") @@ -1160,39 +1212,43 @@ BEGIN Net_419:macrocell GENERIC MAP( - eqn_main => "(!main_0 * !main_1 * !main_2)") + eqn_main => "(!main_0 * !main_1 * !main_2 * !main_3)") PORT MAP( q => Net_419, main_0 => Net_439, - main_1 => mywire_1_1, - main_2 => mywire_1_0); + main_1 => mywire_1_2, + main_2 => mywire_1_1, + main_3 => mywire_1_0); Net_422:macrocell GENERIC MAP( - eqn_main => "(!main_0 * !main_1 * main_2)") + eqn_main => "(!main_0 * !main_1 * !main_2 * main_3)") PORT MAP( q => Net_422, main_0 => Net_439, - main_1 => mywire_1_1, - main_2 => mywire_1_0); + main_1 => mywire_1_2, + main_2 => mywire_1_1, + main_3 => mywire_1_0); Net_425:macrocell GENERIC MAP( - eqn_main => "(!main_0 * main_1 * main_2)") + eqn_main => "(!main_0 * !main_1 * main_2 * main_3)") PORT MAP( q => Net_425, main_0 => Net_439, - main_1 => mywire_1_1, - main_2 => mywire_1_0); + main_1 => mywire_1_2, + main_2 => mywire_1_1, + main_3 => mywire_1_0); Net_428:macrocell GENERIC MAP( - eqn_main => "(!main_0 * main_1 * !main_2)") + eqn_main => "(!main_0 * !main_1 * main_2 * !main_3)") PORT MAP( q => Net_428, main_0 => Net_439, - main_1 => mywire_1_1, - main_2 => mywire_1_0); + main_1 => mywire_1_2, + main_2 => mywire_1_1, + main_3 => mywire_1_0); Net_439:macrocell GENERIC MAP( @@ -1218,6 +1274,16 @@ BEGIN main_2 => \SPIM:BSPIM:state_1\, main_3 => \SPIM:BSPIM:state_0\); + Net_585:macrocell + GENERIC MAP( + eqn_main => "(!main_0 * main_1 * !main_2 * !main_3)") + PORT MAP( + q => Net_585, + main_0 => Net_439, + main_1 => mywire_1_2, + main_2 => mywire_1_1, + main_3 => mywire_1_0); + Pin_1:logicalport GENERIC MAP( drive_mode => "010", @@ -1566,6 +1632,93 @@ BEGIN out_clock_en => '1', out_reset => '0'); + Pin_5:logicalport + GENERIC MAP( + drive_mode => "010", + ibuf_enabled => "1", + id => "f04dd9ba-954e-4352-a3f2-4deb8634d958", + init_dr_st => "1", + input_clk_en => 0, + input_sync => "1", + input_sync_mode => "0", + intr_mode => "00", + invert_in_clock => 0, + invert_in_clock_en => 0, + invert_in_reset => 0, + invert_out_clock => 0, + invert_out_clock_en => 0, + invert_out_reset => 0, + io_voltage => "", + layout_mode => "CONTIGUOUS", + oe_conn => "0", + oe_reset => 0, + oe_sync => "0", + output_clk_en => 0, + output_clock_mode => "0", + output_conn => "1", + output_mode => "0", + output_reset => 0, + output_sync => "0", + pa_in_clock => -1, + pa_in_clock_en => -1, + pa_in_reset => -1, + pa_out_clock => -1, + pa_out_clock_en => -1, + pa_out_reset => -1, + pin_aliases => "", + pin_mode => "O", + por_state => 4, + port_alias_group => "", + port_alias_required => 0, + sio_group_cnt => 0, + sio_hifreq => "", + sio_hyst => "0", + sio_ibuf => "00000000", + sio_info => "00", + sio_obuf => "00000000", + sio_refsel => "00000000", + sio_vtrip => "00000000", + slew_rate => "0", + spanning => 0, + sw_only => 0, + use_annotation => "0", + vtrip => "10", + width => 1, + in_clk_inv => 0, + in_clken_inv => 0, + in_clken_mode => 1, + in_rst_inv => 0, + out_clk_inv => 0, + out_clken_inv => 0, + out_clken_mode => 1, + out_rst_inv => 0) + PORT MAP( + in_clock_en => open, + in_reset => open, + out_clock_en => open, + out_reset => open); + + Pin_5(0):iocell + GENERIC MAP( + in_sync_mode => 0, + out_sync_mode => 0, + oe_sync_mode => 0, + logicalport => "Pin_5", + logicalport_pin_id => 0, + io_capabilities => "0000000000000000000000100000000000000000000000000000000000000001") + PORT MAP( + pa_out => Pin_5(0)__PA, + oe => open, + pin_input => Net_585, + pad_out => Pin_5(0)_PAD, + pad_in => Pin_5(0)_PAD, + in_clock => open, + in_clock_en => '1', + in_reset => '0', + out_clock => open, + out_clock_en => '1', + out_reset => '0'); + Tx_1:logicalport GENERIC MAP( drive_mode => "110", @@ -2167,11 +2320,192 @@ BEGIN control_5 => \SS:control_5\, control_4 => \SS:control_4\, control_3 => \SS:control_3\, - control_2 => \SS:control_2\, + control_2 => mywire_1_2, control_1 => mywire_1_1, control_0 => mywire_1_0, busclk => ClockBlock_BUS_CLK); + \Timer_1:TimerUDB:nrstSts:stsreg\:statusicell + GENERIC MAP( + cy_force_order => 1, + cy_int_mask => "1111111", + cy_md_select => "0000011", + clk_inv => '0', + clken_inv => '0') + PORT MAP( + clock => ClockBlock_BUS_CLK, + status_6 => open, + status_5 => open, + status_4 => open, + status_3 => \Timer_1:TimerUDB:status_3\, + status_2 => \Timer_1:TimerUDB:status_2\, + status_1 => open, + status_0 => \Timer_1:TimerUDB:status_tc\, + clk_en => ClockBlock_1k__SYNC_OUT); + + \Timer_1:TimerUDB:run_mode\:macrocell + GENERIC MAP( + eqn_main => "(main_0)", + clk_inv => '0', + clken_inv => '0') + PORT MAP( + q => \Timer_1:TimerUDB:run_mode\, + main_0 => \Timer_1:TimerUDB:control_7\, + clock_0 => ClockBlock_BUS_CLK, + clk_en => ClockBlock_1k__SYNC_OUT); + + \Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\:controlcell + GENERIC MAP( + cy_ctrl_mode_0 => "00000000", + cy_ctrl_mode_1 => "00000000", + cy_ext_reset => 0, + cy_force_order => 1, + cy_init_value => "00000000") + PORT MAP( + control_7 => \Timer_1:TimerUDB:control_7\, + control_6 => \Timer_1:TimerUDB:control_6\, + control_5 => \Timer_1:TimerUDB:control_5\, + control_4 => \Timer_1:TimerUDB:control_4\, + control_3 => \Timer_1:TimerUDB:control_3\, + control_2 => \Timer_1:TimerUDB:control_2\, + control_1 => \Timer_1:TimerUDB:control_1\, + control_0 => \Timer_1:TimerUDB:control_0\, + busclk => ClockBlock_BUS_CLK); + + \Timer_1:TimerUDB:sT16:timerdp:u0\:datapathcell + GENERIC MAP( + a0_init => "00000000", + a1_init => "00000000", + ce0_sync => 1, + ce1_sync => 1, + cl0_sync => 1, + cl1_sync => 1, + cmsb_sync => 1, + co_msb_sync => 1, + cy_dpconfig => "0000000001000000000000000100000001000000010000000000000010000000000000001000000000000000100000000000000010000000000000001000000011111111000000001111111111111111000000000000000000000001000000000000000000011000", + d0_init => "00000000", + d1_init => "00000000", + f0_blk_sync => 1, + f0_bus_sync => 1, + f1_blk_sync => 1, + f1_bus_sync => 1, + ff0_sync => 1, + ff1_sync => 1, + ov_msb_sync => 1, + so_sync => 1, + z0_sync => 1, + z1_sync => 1, + uses_p_in => '0', + uses_p_out => '0', + clk_inv => '0', + clken_inv => '0') + PORT MAP( + clock => ClockBlock_BUS_CLK, + cs_addr_1 => \Timer_1:TimerUDB:timer_enable\, + cs_addr_0 => \Timer_1:TimerUDB:per_zero\, + clk_en => ClockBlock_1k__SYNC_OUT, + busclk => ClockBlock_BUS_CLK, + ce0 => \Timer_1:TimerUDB:sT16:timerdp:u0.ce0__sig\, + cl0 => \Timer_1:TimerUDB:sT16:timerdp:u0.cl0__sig\, + z0 => \Timer_1:TimerUDB:sT16:timerdp:u0.z0__sig\, + ff0 => \Timer_1:TimerUDB:sT16:timerdp:u0.ff0__sig\, + ce1 => \Timer_1:TimerUDB:sT16:timerdp:u0.ce1__sig\, + cl1 => \Timer_1:TimerUDB:sT16:timerdp:u0.cl1__sig\, + z1 => \Timer_1:TimerUDB:sT16:timerdp:u0.z1__sig\, + ff1 => \Timer_1:TimerUDB:sT16:timerdp:u0.ff1__sig\, + co_msb => \Timer_1:TimerUDB:sT16:timerdp:u0.co_msb__sig\, + sol_msb => \Timer_1:TimerUDB:sT16:timerdp:u0.sol_msb__sig\, + cfbo => \Timer_1:TimerUDB:sT16:timerdp:u0.cfbo__sig\, + sil => \Timer_1:TimerUDB:sT16:timerdp:u1.sor__sig\, + cmsbi => \Timer_1:TimerUDB:sT16:timerdp:u1.cmsbo__sig\); + + \Timer_1:TimerUDB:sT16:timerdp:u1\:datapathcell + GENERIC MAP( + a0_init => "00000000", + a1_init => "00000000", + ce0_sync => 1, + ce1_sync => 1, + cl0_sync => 1, + cl1_sync => 1, + cmsb_sync => 1, + co_msb_sync => 1, + cy_dpconfig => "0000000001000000000000000100000001000000010000000000000010000000000000001000000000000000100000000000000010000000000000001000000011111111000000001111111111111111100000110000000000000001000000110000000000011000", + d0_init => "00000000", + d1_init => "00000000", + f0_blk_sync => 1, + f0_bus_sync => 1, + f1_blk_sync => 1, + f1_bus_sync => 1, + ff0_sync => 1, + ff1_sync => 1, + ov_msb_sync => 1, + so_sync => 1, + z0_sync => 1, + z1_sync => 1, + uses_p_in => '0', + uses_p_out => '0', + clk_inv => '0', + clken_inv => '0') + PORT MAP( + clock => ClockBlock_BUS_CLK, + cs_addr_1 => \Timer_1:TimerUDB:timer_enable\, + cs_addr_0 => \Timer_1:TimerUDB:per_zero\, + z0_comb => \Timer_1:TimerUDB:per_zero\, + f0_bus_stat_comb => \Timer_1:TimerUDB:status_3\, + f0_blk_stat_comb => \Timer_1:TimerUDB:status_2\, + busclk => ClockBlock_BUS_CLK, + clk_en => ClockBlock_1k__SYNC_OUT, + ce0i => \Timer_1:TimerUDB:sT16:timerdp:u0.ce0__sig\, + cl0i => \Timer_1:TimerUDB:sT16:timerdp:u0.cl0__sig\, + z0i => \Timer_1:TimerUDB:sT16:timerdp:u0.z0__sig\, + ff0i => \Timer_1:TimerUDB:sT16:timerdp:u0.ff0__sig\, + ce1i => \Timer_1:TimerUDB:sT16:timerdp:u0.ce1__sig\, + cl1i => \Timer_1:TimerUDB:sT16:timerdp:u0.cl1__sig\, + z1i => \Timer_1:TimerUDB:sT16:timerdp:u0.z1__sig\, + ff1i => \Timer_1:TimerUDB:sT16:timerdp:u0.ff1__sig\, + ci => \Timer_1:TimerUDB:sT16:timerdp:u0.co_msb__sig\, + sir => \Timer_1:TimerUDB:sT16:timerdp:u0.sol_msb__sig\, + cfbi => \Timer_1:TimerUDB:sT16:timerdp:u0.cfbo__sig\, + sor => \Timer_1:TimerUDB:sT16:timerdp:u1.sor__sig\, + cmsbo => \Timer_1:TimerUDB:sT16:timerdp:u1.cmsbo__sig\); + + \Timer_1:TimerUDB:status_tc\:macrocell + GENERIC MAP( + eqn_main => "(main_0 * main_1)") + PORT MAP( + q => \Timer_1:TimerUDB:status_tc\, + main_0 => \Timer_1:TimerUDB:run_mode\, + main_1 => \Timer_1:TimerUDB:per_zero\); + + \Timer_1:TimerUDB:timer_enable\:macrocell + GENERIC MAP( + eqn_main => "(main_0 * !main_1 * !main_4) + (main_0 * !main_2 * !main_4) + (main_0 * !main_3 * !main_4)", + clk_inv => '0', + clken_inv => '0') + PORT MAP( + q => \Timer_1:TimerUDB:timer_enable\, + clock_0 => ClockBlock_BUS_CLK, + clk_en => ClockBlock_1k__SYNC_OUT, + main_0 => \Timer_1:TimerUDB:control_7\, + main_1 => \Timer_1:TimerUDB:timer_enable\, + main_2 => \Timer_1:TimerUDB:run_mode\, + main_3 => \Timer_1:TimerUDB:per_zero\, + main_4 => \Timer_1:TimerUDB:trig_disable\); + + \Timer_1:TimerUDB:trig_disable\:macrocell + GENERIC MAP( + eqn_main => "(main_0 * main_1 * main_2 * !main_3)", + clk_inv => '0', + clken_inv => '0') + PORT MAP( + q => \Timer_1:TimerUDB:trig_disable\, + clock_0 => ClockBlock_BUS_CLK, + clk_en => ClockBlock_1k__SYNC_OUT, + main_0 => \Timer_1:TimerUDB:timer_enable\, + main_1 => \Timer_1:TimerUDB:run_mode\, + main_2 => \Timer_1:TimerUDB:per_zero\, + main_3 => \Timer_1:TimerUDB:trig_disable\); + \UART_1:BUART:counter_load_not\:macrocell GENERIC MAP( eqn_main => "(!main_0 * !main_1 * !main_2) + (!main_0 * !main_1 * main_3)") diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_r.lib b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_r.lib index 7621965..7df65f1 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_r.lib +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_r.lib @@ -247,7 +247,7 @@ library (timing) { } pin (q) { direction : output; - function : "((!main_0 * !main_1 * !main_2)) ^ 1"; + function : "((!main_0 * !main_1 * !main_2 * !main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -257,7 +257,7 @@ library (timing) { } pin (q_fixed) { direction : output; - function : "((!main_0 * !main_1 * !main_2)) ^ 1"; + function : "((!main_0 * !main_1 * !main_2 * !main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -335,7 +335,7 @@ library (timing) { } pin (q) { direction : output; - function : "((!main_0 * !main_1 * main_2)) ^ 1"; + function : "((!main_0 * !main_1 * !main_2 * main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -345,7 +345,7 @@ library (timing) { } pin (q_fixed) { direction : output; - function : "((!main_0 * !main_1 * main_2)) ^ 1"; + function : "((!main_0 * !main_1 * !main_2 * main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -423,7 +423,7 @@ library (timing) { } pin (q) { direction : output; - function : "((!main_0 * main_1 * main_2)) ^ 1"; + function : "((!main_0 * !main_1 * main_2 * main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -433,7 +433,7 @@ library (timing) { } pin (q_fixed) { direction : output; - function : "((!main_0 * main_1 * main_2)) ^ 1"; + function : "((!main_0 * !main_1 * main_2 * main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -511,7 +511,7 @@ library (timing) { } pin (q) { direction : output; - function : "((!main_0 * main_1 * !main_2)) ^ 1"; + function : "((!main_0 * !main_1 * main_2 * !main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -521,7 +521,7 @@ library (timing) { } pin (q_fixed) { direction : output; - function : "((!main_0 * main_1 * !main_2)) ^ 1"; + function : "((!main_0 * !main_1 * main_2 * !main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -726,6 +726,94 @@ library (timing) { } } } + cell (macrocell9) { + pin (cin) { + direction : input; + } + bundle (cpt0) { + members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); + direction : input; + } + bundle (cpt1) { + members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); + direction : input; + } + bundle (main) { + members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); + direction : input; + } + bundle (clock) { + members (clock_0); + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (ar) { + members (ar_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + bundle (ap) { + members (ap_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + pin (cout) { + direction : output; + } + pin (q) { + direction : output; + function : "((!main_0 * main_1 * !main_2 * !main_3)) ^ 1"; + timing () { + timing_type : combinational; + related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; + intrinsic_rise : 3.350; + intrinsic_fall : 3.350; + } + } + pin (q_fixed) { + direction : output; + function : "((!main_0 * main_1 * !main_2 * !main_3)) ^ 1"; + timing () { + timing_type : combinational; + related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; + intrinsic_rise : 3.350; + intrinsic_fall : 3.350; + } + } + } cell (iocell1) { pin (in_clock) { direction : input; @@ -999,6 +1087,74 @@ library (timing) { } } cell (iocell5) { + pin (in_clock) { + direction : input; + clock : true; + } + pin (in_clock_en) { + direction : input; + } + pin (in_reset) { + direction : input; + } + pin (out_clock) { + direction : input; + clock : true; + } + pin (out_clock_en) { + direction : input; + } + pin (out_reset) { + direction : input; + } + pin (pin_input) { + direction : input; + } + pin (pa_out) { + direction : output; + } + pin (oe) { + direction : input; + } + pin (pad_in) { + direction : input; + } + pin (pad_out) { + direction : output; + timing () { + timing_sense : negative_unate; + timing_type : three_state_disable; + related_pin : "oe"; + intrinsic_rise : 16.870; + intrinsic_fall : 16.870; + } + timing () { + timing_sense : positive_unate; + timing_type : three_state_enable; + related_pin : "oe"; + intrinsic_rise : 16.870; + intrinsic_fall : 16.870; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "pin_input"; + intrinsic_rise : 16.839; + intrinsic_fall : 16.839; + } + } + pin (fb) { + direction : output; + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "pad_in"; + intrinsic_rise : 16.918; + intrinsic_fall : 16.918; + } + } + } + cell (iocell6) { pin (in_clock) { direction : input; clock : true; @@ -1066,7 +1222,7 @@ library (timing) { } } } - cell (iocell6) { + cell (iocell7) { pin (in_clock) { direction : input; clock : true; @@ -1134,7 +1290,7 @@ library (timing) { } } } - cell (iocell7) { + cell (iocell8) { pin (in_clock) { direction : input; clock : true; @@ -1202,7 +1358,7 @@ library (timing) { } } } - cell (iocell8) { + cell (iocell9) { pin (in_clock) { direction : input; clock : true; @@ -1270,7 +1426,7 @@ library (timing) { } } } - cell (iocell9) { + cell (iocell10) { pin (in_clock) { direction : input; clock : true; @@ -1338,7 +1494,7 @@ library (timing) { } } } - cell (iocell10) { + cell (iocell11) { pin (in_clock) { direction : input; clock : true; @@ -1406,7 +1562,7 @@ library (timing) { } } } - cell (iocell11) { + cell (iocell12) { pin (in_clock) { direction : input; clock : true; @@ -1474,7 +1630,7 @@ library (timing) { } } } - cell (iocell12) { + cell (iocell13) { pin (in_clock) { direction : input; clock : true; @@ -1694,7 +1850,7 @@ library (timing) { direction : output; } } - cell (macrocell9) { + cell (macrocell10) { pin (cin) { direction : input; } @@ -1792,7 +1948,7 @@ library (timing) { } } } - cell (macrocell10) { + cell (macrocell11) { pin (cin) { direction : input; } @@ -1880,7 +2036,7 @@ library (timing) { } } } - cell (macrocell11) { + cell (macrocell12) { pin (cin) { direction : input; } @@ -1978,7 +2134,7 @@ library (timing) { } } } - cell (macrocell12) { + cell (macrocell13) { pin (cin) { direction : input; } @@ -2076,7 +2232,7 @@ library (timing) { } } } - cell (macrocell13) { + cell (macrocell14) { pin (cin) { direction : input; } @@ -2174,7 +2330,7 @@ library (timing) { } } } - cell (macrocell14) { + cell (macrocell15) { pin (cin) { direction : input; } @@ -2272,7 +2428,7 @@ library (timing) { } } } - cell (macrocell15) { + cell (macrocell16) { pin (cin) { direction : input; } @@ -2370,7 +2526,7 @@ library (timing) { } } } - cell (macrocell16) { + cell (macrocell17) { pin (cin) { direction : input; } @@ -2468,7 +2624,7 @@ library (timing) { } } } - cell (macrocell17) { + cell (macrocell18) { pin (cin) { direction : input; } @@ -2566,7 +2722,7 @@ library (timing) { } } } - cell (macrocell18) { + cell (macrocell19) { pin (cin) { direction : input; } @@ -3159,7 +3315,7 @@ library (timing) { direction : output; } } - cell (macrocell19) { + cell (macrocell20) { pin (cin) { direction : input; } @@ -3257,7 +3413,7 @@ library (timing) { } } } - cell (macrocell20) { + cell (macrocell21) { pin (cin) { direction : input; } @@ -3355,7 +3511,7 @@ library (timing) { } } } - cell (macrocell21) { + cell (macrocell22) { pin (cin) { direction : input; } @@ -3453,7 +3609,7 @@ library (timing) { } } } - cell (macrocell22) { + cell (macrocell23) { pin (cin) { direction : input; } @@ -3541,7 +3697,7 @@ library (timing) { } } } - cell (macrocell23) { + cell (macrocell24) { pin (cin) { direction : input; } @@ -3787,24 +3943,8 @@ library (timing) { } } } - cell (macrocell24) { - pin (cin) { - direction : input; - } - bundle (cpt0) { - members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); - direction : input; - } - bundle (cpt1) { - members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); - direction : input; - } - bundle (main) { - members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); - direction : input; - } - bundle (clock) { - members (clock_0); + cell (statusicell3) { + pin (clock) { direction : input; clock : true; } @@ -3812,59 +3952,1778 @@ library (timing) { direction : input; timing () { timing_type : setup_rising; - related_pin : "clock_0"; + related_pin : "clock"; intrinsic_rise : 2.100; intrinsic_fall : 2.100; } timing () { timing_type : hold_rising; - related_pin : "clock_0"; + related_pin : "clock"; intrinsic_rise : 0.000; intrinsic_fall : 0.000; } } - bundle (ar) { - members (ar_0); + pin (reset) { direction : input; timing () { timing_type : recovery_rising; - related_pin : "clock_0"; + related_pin : "clock"; intrinsic_fall : 0.000; } timing () { timing_type : removal_rising; - related_pin : "clock_0"; + related_pin : "clock"; intrinsic_fall : 0.000; } } - bundle (ap) { - members (ap_0); + pin (status_0) { direction : input; timing () { - timing_type : recovery_rising; - related_pin : "clock_0"; - intrinsic_fall : 0.000; + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 1.570; + intrinsic_fall : 1.570; } timing () { - timing_type : removal_rising; - related_pin : "clock_0"; - intrinsic_fall : 0.000; + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 2.000; + intrinsic_fall : 2.000; } } - pin (cout) { - direction : output; - } - pin (q) { - direction : output; - function : "((!main_0 * !main_1 * !main_2) + (!main_0 * !main_1 * main_3)) ^ 1"; + pin (status_1) { + direction : input; timing () { - timing_type : combinational; - related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; - intrinsic_rise : 3.350; - intrinsic_fall : 3.350; + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 1.570; + intrinsic_fall : 1.570; } - } - pin (q_fixed) { + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 2.000; + intrinsic_fall : 2.000; + } + } + pin (status_2) { + direction : input; + } + pin (status_3) { + direction : input; + } + pin (status_4) { + direction : input; + } + pin (status_5) { + direction : input; + } + pin (status_6) { + direction : input; + } + pin (interrupt) { + direction : output; + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_2"; + intrinsic_rise : 2.460; + intrinsic_fall : 2.460; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_2"; + intrinsic_rise : 3.910; + intrinsic_fall : 3.910; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_3"; + intrinsic_rise : 2.460; + intrinsic_fall : 2.460; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_3"; + intrinsic_rise : 3.910; + intrinsic_fall : 3.910; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_4"; + intrinsic_rise : 2.460; + intrinsic_fall : 2.460; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_4"; + intrinsic_rise : 3.910; + intrinsic_fall : 3.910; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_5"; + intrinsic_rise : 2.460; + intrinsic_fall : 2.460; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_5"; + intrinsic_rise : 3.910; + intrinsic_fall : 3.910; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_6"; + intrinsic_rise : 2.460; + intrinsic_fall : 2.460; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_6"; + intrinsic_rise : 3.910; + intrinsic_fall : 3.910; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 4.030; + intrinsic_fall : 4.030; + } + timing () { + timing_sense : negative_unate; + timing_type : clear; + related_pin : "reset"; + intrinsic_rise : 8.260; + intrinsic_fall : 8.260; + } + } + } + cell (macrocell25) { + pin (cin) { + direction : input; + } + bundle (cpt0) { + members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); + direction : input; + } + bundle (cpt1) { + members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); + direction : input; + } + bundle (main) { + members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 3.510; + intrinsic_fall : 3.510; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (clock) { + members (clock_0); + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (ar) { + members (ar_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + bundle (ap) { + members (ap_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + pin (cout) { + direction : output; + } + pin (q) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock_0"; + intrinsic_rise : 1.250; + intrinsic_fall : 1.250; + } + } + pin (q_fixed) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock_0"; + intrinsic_rise : 1.250; + intrinsic_fall : 1.250; + } + } + } + cell (controlcell2) { + pin (clock) { + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + pin (reset) { + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock"; + intrinsic_fall : 0.000; + } + } + pin (busclk) { + direction : input; + clock : true; + } + pin (control_0) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_1) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_2) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_3) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_4) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_5) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_6) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_7) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + } + cell (datapathcell2) { + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 2.10; + intrinsic_fall : 2.10; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (reset) { + direction : input; + } + pin (cs_addr_0) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 11.52; + intrinsic_fall : 11.52; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 5.31; + intrinsic_fall : 5.31; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 10.97; + intrinsic_fall : 10.97; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (cs_addr_1) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 11.52; + intrinsic_fall : 11.52; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 5.31; + intrinsic_fall : 5.31; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 10.97; + intrinsic_fall : 10.97; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (cs_addr_2) { + direction : input; + } + pin (route_si) { + direction : input; + } + pin (route_ci) { + direction : input; + } + pin (f0_load) { + direction : input; + } + pin (f1_load) { + direction : input; + } + pin (d0_load) { + direction : input; + } + pin (d1_load) { + direction : input; + } + pin (p_in_0) { + direction : input; + } + pin (p_in_1) { + direction : input; + } + pin (p_in_2) { + direction : input; + } + pin (p_in_3) { + direction : input; + } + pin (p_in_4) { + direction : input; + } + pin (p_in_5) { + direction : input; + } + pin (p_in_6) { + direction : input; + } + pin (p_in_7) { + direction : input; + } + pin (ce0i) { + direction : input; + } + pin (cl0i) { + direction : input; + } + pin (z0i) { + direction : input; + } + pin (ff0i) { + direction : input; + } + pin (ce1i) { + direction : input; + } + pin (cl1i) { + direction : input; + } + pin (z1i) { + direction : input; + } + pin (ff1i) { + direction : input; + } + pin (cap0i) { + direction : input; + } + pin (cap1i) { + direction : input; + } + pin (ci) { + direction : input; + } + pin (sir) { + direction : input; + } + pin (cfbi) { + direction : input; + } + pin (sil) { + direction : input; + } + pin (cmsbi) { + direction : input; + } + pin (busclk) { + direction : input; + clock : true; + } + pin (clock) { + direction : input; + clock : true; + } + pin (ce0_reg) { + direction : output; + } + pin (cl0_reg) { + direction : output; + } + pin (z0_reg) { + direction : output; + } + pin (f0_reg) { + direction : output; + } + pin (ce1_reg) { + direction : output; + } + pin (cl1_reg) { + direction : output; + } + pin (z1_reg) { + direction : output; + } + pin (f1_reg) { + direction : output; + } + pin (ov_msb_reg) { + direction : output; + } + pin (co_msb_reg) { + direction : output; + } + pin (cmsb_reg) { + direction : output; + } + pin (so_reg) { + direction : output; + } + pin (f0_bus_stat_reg) { + direction : output; + } + pin (f0_blk_stat_reg) { + direction : output; + } + pin (f1_bus_stat_reg) { + direction : output; + } + pin (f1_blk_stat_reg) { + direction : output; + } + pin (ce0_comb) { + direction : output; + } + pin (cl0_comb) { + direction : output; + } + pin (z0_comb) { + direction : output; + } + pin (f0_comb) { + direction : output; + } + pin (ce1_comb) { + direction : output; + } + pin (cl1_comb) { + direction : output; + } + pin (z1_comb) { + direction : output; + } + pin (f1_comb) { + direction : output; + } + pin (ov_msb_comb) { + direction : output; + } + pin (co_msb_comb) { + direction : output; + } + pin (cmsb_comb) { + direction : output; + } + pin (so_comb) { + direction : output; + } + pin (f0_bus_stat_comb) { + direction : output; + } + pin (f0_blk_stat_comb) { + direction : output; + } + pin (f1_bus_stat_comb) { + direction : output; + } + pin (f1_blk_stat_comb) { + direction : output; + } + pin (p_out_0) { + direction : output; + } + pin (p_out_1) { + direction : output; + } + pin (p_out_2) { + direction : output; + } + pin (p_out_3) { + direction : output; + } + pin (p_out_4) { + direction : output; + } + pin (p_out_5) { + direction : output; + } + pin (p_out_6) { + direction : output; + } + pin (p_out_7) { + direction : output; + } + pin (ce0) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.54; + intrinsic_fall : 3.54; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.54; + intrinsic_fall : 3.54; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 1.90; + intrinsic_fall : 1.90; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 1.90; + intrinsic_fall : 1.90; + } + } + pin (cl0) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 4.14; + intrinsic_fall : 4.14; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 4.14; + intrinsic_fall : 4.14; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.14; + intrinsic_fall : 2.14; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.14; + intrinsic_fall : 2.14; + } + } + pin (z0) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.32; + intrinsic_fall : 2.32; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 1.74; + intrinsic_fall : 1.74; + } + } + pin (ff0) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.73; + intrinsic_fall : 2.73; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 1.32; + intrinsic_fall : 1.32; + } + } + pin (ce1) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.51; + intrinsic_fall : 3.51; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.51; + intrinsic_fall : 3.51; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.03; + intrinsic_fall : 2.03; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.03; + intrinsic_fall : 2.03; + } + } + pin (cl1) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 4.90; + intrinsic_fall : 4.90; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 4.90; + intrinsic_fall : 4.90; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.26; + intrinsic_fall : 2.26; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.26; + intrinsic_fall : 2.26; + } + } + pin (z1) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.29; + intrinsic_fall : 2.29; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 1.53; + intrinsic_fall : 1.53; + } + } + pin (ff1) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.17; + intrinsic_fall : 2.17; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 1.18; + intrinsic_fall : 1.18; + } + } + pin (cap0) { + direction : output; + } + pin (cap1) { + direction : output; + } + pin (co_msb) { + direction : output; + timing () { + timing_type : combinational; + related_pin : "cs_addr_0"; + intrinsic_rise : 9.71; + intrinsic_fall : 9.71; + } + timing () { + timing_type : combinational; + related_pin : "cs_addr_1"; + intrinsic_rise : 9.71; + intrinsic_fall : 9.71; + } + timing () { + timing_type : combinational; + related_pin : "cs_addr_0"; + intrinsic_rise : 9.71; + intrinsic_fall : 9.71; + } + timing () { + timing_type : combinational; + related_pin : "cs_addr_1"; + intrinsic_rise : 9.71; + intrinsic_fall : 9.71; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 7.21; + intrinsic_fall : 7.21; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.21; + intrinsic_fall : 3.21; + } + } + pin (sol_msb) { + direction : output; + } + pin (cfbo) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 4.84; + intrinsic_fall : 4.84; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.63; + intrinsic_fall : 3.63; + } + } + pin (sor) { + direction : output; + } + pin (cmsbo) { + direction : output; + } + } + cell (datapathcell3) { + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 2.10; + intrinsic_fall : 2.10; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (reset) { + direction : input; + } + pin (cs_addr_0) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 11.52; + intrinsic_fall : 11.52; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 5.31; + intrinsic_fall : 5.31; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 10.97; + intrinsic_fall : 10.97; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (cs_addr_1) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 11.52; + intrinsic_fall : 11.52; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 5.31; + intrinsic_fall : 5.31; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 10.97; + intrinsic_fall : 10.97; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (cs_addr_2) { + direction : input; + } + pin (route_si) { + direction : input; + } + pin (route_ci) { + direction : input; + } + pin (f0_load) { + direction : input; + } + pin (f1_load) { + direction : input; + } + pin (d0_load) { + direction : input; + } + pin (d1_load) { + direction : input; + } + pin (p_in_0) { + direction : input; + } + pin (p_in_1) { + direction : input; + } + pin (p_in_2) { + direction : input; + } + pin (p_in_3) { + direction : input; + } + pin (p_in_4) { + direction : input; + } + pin (p_in_5) { + direction : input; + } + pin (p_in_6) { + direction : input; + } + pin (p_in_7) { + direction : input; + } + pin (ce0i) { + direction : input; + } + pin (cl0i) { + direction : input; + } + pin (z0i) { + direction : input; + } + pin (ff0i) { + direction : input; + } + pin (ce1i) { + direction : input; + } + pin (cl1i) { + direction : input; + } + pin (z1i) { + direction : input; + } + pin (ff1i) { + direction : input; + } + pin (cap0i) { + direction : input; + } + pin (cap1i) { + direction : input; + } + pin (ci) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 5.09; + intrinsic_fall : 5.09; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 4.57; + intrinsic_fall : 4.57; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (sir) { + direction : input; + } + pin (cfbi) { + direction : input; + } + pin (sil) { + direction : input; + } + pin (cmsbi) { + direction : input; + } + pin (busclk) { + direction : input; + clock : true; + } + pin (clock) { + direction : input; + clock : true; + } + pin (ce0_reg) { + direction : output; + } + pin (cl0_reg) { + direction : output; + } + pin (z0_reg) { + direction : output; + } + pin (f0_reg) { + direction : output; + } + pin (ce1_reg) { + direction : output; + } + pin (cl1_reg) { + direction : output; + } + pin (z1_reg) { + direction : output; + } + pin (f1_reg) { + direction : output; + } + pin (ov_msb_reg) { + direction : output; + } + pin (co_msb_reg) { + direction : output; + } + pin (cmsb_reg) { + direction : output; + } + pin (so_reg) { + direction : output; + } + pin (f0_bus_stat_reg) { + direction : output; + } + pin (f0_blk_stat_reg) { + direction : output; + } + pin (f1_bus_stat_reg) { + direction : output; + } + pin (f1_blk_stat_reg) { + direction : output; + } + pin (ce0_comb) { + direction : output; + } + pin (cl0_comb) { + direction : output; + } + pin (z0_comb) { + direction : output; + timing () { + timing_type : combinational; + related_pin : "z0i"; + intrinsic_rise : 2.96; + intrinsic_fall : 2.96; + } + timing () { + timing_type : combinational; + related_pin : "z0i"; + intrinsic_rise : 2.74; + intrinsic_fall : 2.74; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.85; + intrinsic_fall : 3.85; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.27; + intrinsic_fall : 3.27; + } + } + pin (f0_comb) { + direction : output; + } + pin (ce1_comb) { + direction : output; + } + pin (cl1_comb) { + direction : output; + } + pin (z1_comb) { + direction : output; + } + pin (f1_comb) { + direction : output; + } + pin (ov_msb_comb) { + direction : output; + } + pin (co_msb_comb) { + direction : output; + } + pin (cmsb_comb) { + direction : output; + } + pin (so_comb) { + direction : output; + } + pin (f0_bus_stat_comb) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 7.21; + intrinsic_fall : 7.21; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 7.21; + intrinsic_fall : 7.21; + } + } + pin (f0_blk_stat_comb) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 7.34; + intrinsic_fall : 7.34; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 7.34; + intrinsic_fall : 7.34; + } + } + pin (f1_bus_stat_comb) { + direction : output; + } + pin (f1_blk_stat_comb) { + direction : output; + } + pin (p_out_0) { + direction : output; + } + pin (p_out_1) { + direction : output; + } + pin (p_out_2) { + direction : output; + } + pin (p_out_3) { + direction : output; + } + pin (p_out_4) { + direction : output; + } + pin (p_out_5) { + direction : output; + } + pin (p_out_6) { + direction : output; + } + pin (p_out_7) { + direction : output; + } + pin (ce0) { + direction : output; + } + pin (cl0) { + direction : output; + } + pin (z0) { + direction : output; + } + pin (ff0) { + direction : output; + } + pin (ce1) { + direction : output; + } + pin (cl1) { + direction : output; + } + pin (z1) { + direction : output; + } + pin (ff1) { + direction : output; + } + pin (cap0) { + direction : output; + } + pin (cap1) { + direction : output; + } + pin (co_msb) { + direction : output; + } + pin (sol_msb) { + direction : output; + } + pin (cfbo) { + direction : output; + } + pin (sor) { + direction : output; + } + pin (cmsbo) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.32; + intrinsic_fall : 3.32; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.25; + intrinsic_fall : 2.25; + } + } + } + cell (macrocell26) { + pin (cin) { + direction : input; + } + bundle (cpt0) { + members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); + direction : input; + } + bundle (cpt1) { + members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); + direction : input; + } + bundle (main) { + members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); + direction : input; + } + bundle (clock) { + members (clock_0); + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (ar) { + members (ar_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + bundle (ap) { + members (ap_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + pin (cout) { + direction : output; + } + pin (q) { + direction : output; + function : "((main_0 * main_1)) ^ 0"; + timing () { + timing_type : combinational; + related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; + intrinsic_rise : 3.350; + intrinsic_fall : 3.350; + } + } + pin (q_fixed) { + direction : output; + function : "((main_0 * main_1)) ^ 0"; + timing () { + timing_type : combinational; + related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; + intrinsic_rise : 3.350; + intrinsic_fall : 3.350; + } + } + } + cell (macrocell27) { + pin (cin) { + direction : input; + } + bundle (cpt0) { + members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); + direction : input; + } + bundle (cpt1) { + members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); + direction : input; + } + bundle (main) { + members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 3.510; + intrinsic_fall : 3.510; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (clock) { + members (clock_0); + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (ar) { + members (ar_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + bundle (ap) { + members (ap_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + pin (cout) { + direction : output; + } + pin (q) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock_0"; + intrinsic_rise : 1.250; + intrinsic_fall : 1.250; + } + } + pin (q_fixed) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock_0"; + intrinsic_rise : 1.250; + intrinsic_fall : 1.250; + } + } + } + cell (macrocell28) { + pin (cin) { + direction : input; + } + bundle (cpt0) { + members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); + direction : input; + } + bundle (cpt1) { + members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); + direction : input; + } + bundle (main) { + members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 3.510; + intrinsic_fall : 3.510; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (clock) { + members (clock_0); + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (ar) { + members (ar_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + bundle (ap) { + members (ap_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + pin (cout) { + direction : output; + } + pin (q) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock_0"; + intrinsic_rise : 1.250; + intrinsic_fall : 1.250; + } + } + pin (q_fixed) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock_0"; + intrinsic_rise : 1.250; + intrinsic_fall : 1.250; + } + } + } + cell (macrocell29) { + pin (cin) { + direction : input; + } + bundle (cpt0) { + members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); + direction : input; + } + bundle (cpt1) { + members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); + direction : input; + } + bundle (main) { + members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); + direction : input; + } + bundle (clock) { + members (clock_0); + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (ar) { + members (ar_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + bundle (ap) { + members (ap_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + pin (cout) { + direction : output; + } + pin (q) { + direction : output; + function : "((!main_0 * !main_1 * !main_2) + (!main_0 * !main_1 * main_3)) ^ 1"; + timing () { + timing_type : combinational; + related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; + intrinsic_rise : 3.350; + intrinsic_fall : 3.350; + } + } + pin (q_fixed) { direction : output; function : "((!main_0 * !main_1 * !main_2) + (!main_0 * !main_1 * main_3)) ^ 1"; timing () { @@ -3875,7 +5734,7 @@ library (timing) { } } } - cell (datapathcell2) { + cell (datapathcell4) { pin (clk_en) { direction : input; } @@ -4260,7 +6119,7 @@ library (timing) { direction : output; } } - cell (statusicell3) { + cell (statusicell4) { pin (clock) { direction : input; clock : true; @@ -4427,7 +6286,7 @@ library (timing) { } } } - cell (datapathcell3) { + cell (datapathcell5) { pin (clk_en) { direction : input; } @@ -4752,7 +6611,7 @@ library (timing) { direction : output; } } - cell (macrocell25) { + cell (macrocell30) { pin (cin) { direction : input; } @@ -4850,7 +6709,7 @@ library (timing) { } } } - cell (macrocell26) { + cell (macrocell31) { pin (cin) { direction : input; } @@ -4938,7 +6797,7 @@ library (timing) { } } } - cell (macrocell27) { + cell (macrocell32) { pin (cin) { direction : input; } @@ -5036,7 +6895,7 @@ library (timing) { } } } - cell (macrocell28) { + cell (macrocell33) { pin (cin) { direction : input; } @@ -5134,7 +6993,7 @@ library (timing) { } } } - cell (macrocell29) { + cell (macrocell34) { pin (cin) { direction : input; } @@ -5232,7 +7091,7 @@ library (timing) { } } } - cell (macrocell30) { + cell (macrocell35) { pin (cin) { direction : input; } @@ -5320,7 +7179,7 @@ library (timing) { } } } - cell (macrocell31) { + cell (macrocell36) { pin (cin) { direction : input; } @@ -5408,7 +7267,7 @@ library (timing) { } } } - cell (macrocell32) { + cell (macrocell37) { pin (cin) { direction : input; } @@ -5506,7 +7365,7 @@ library (timing) { } } } - cell (iocell13) { + cell (iocell14) { pin (in_clock) { direction : input; clock : true; @@ -5574,7 +7433,7 @@ library (timing) { } } } - cell (iocell14) { + cell (iocell15) { pin (in_clock) { direction : input; clock : true; @@ -5642,7 +7501,7 @@ library (timing) { } } } - cell (iocell15) { + cell (iocell16) { pin (in_clock) { direction : input; clock : true; diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_r.vh2 b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_r.vh2 index e5c3302..e3a6b40 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_r.vh2 +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_r.vh2 @@ -1,5 +1,5 @@ -- Project: PSOC5_SPI_LSM303D --- Generated: 03/22/2013 10:33:27 +-- Generated: 07/25/2013 16:48:57 -- ENTITY PSOC5_SPI_LSM303D IS @@ -8,6 +8,7 @@ ENTITY PSOC5_SPI_LSM303D IS Pin_2(0)_PAD : OUT std_ulogic; Pin_3(0)_PAD : OUT std_ulogic; Pin_4(0)_PAD : OUT std_ulogic; + Pin_5(0)_PAD : OUT std_ulogic; Tx_1(0)_PAD : OUT std_ulogic; \LCD:LCDPort(0)_PAD\ : OUT std_ulogic; \LCD:LCDPort(1)_PAD\ : OUT std_ulogic; @@ -31,6 +32,7 @@ END PSOC5_SPI_LSM303D; ARCHITECTURE __DEFAULT__ OF PSOC5_SPI_LSM303D IS SIGNAL ClockBlock_100k : bit; SIGNAL ClockBlock_1k : bit; + SIGNAL ClockBlock_1k__SYNC_OUT : bit; SIGNAL ClockBlock_32k : bit; SIGNAL ClockBlock_BUS_CLK : bit; ATTRIBUTE global_signal OF ClockBlock_BUS_CLK : SIGNAL IS true; @@ -46,25 +48,28 @@ ARCHITECTURE __DEFAULT__ OF PSOC5_SPI_LSM303D IS SIGNAL Net_191_local : bit; SIGNAL Net_20 : bit; SIGNAL Net_234 : bit; - ATTRIBUTE placement_force OF Net_234 : SIGNAL IS "U(3,4,A)1"; + ATTRIBUTE placement_force OF Net_234 : SIGNAL IS "U(3,4,A)2"; SIGNAL Net_30 : bit; - ATTRIBUTE placement_force OF Net_30 : SIGNAL IS "U(3,3,A)2"; + ATTRIBUTE placement_force OF Net_30 : SIGNAL IS "U(3,5,A)2"; SIGNAL Net_419 : bit; - ATTRIBUTE placement_force OF Net_419 : SIGNAL IS "U(3,3,A)3"; + ATTRIBUTE placement_force OF Net_419 : SIGNAL IS "U(3,5,A)3"; SIGNAL Net_422 : bit; - ATTRIBUTE placement_force OF Net_422 : SIGNAL IS "U(3,3,B)0"; + ATTRIBUTE placement_force OF Net_422 : SIGNAL IS "U(3,5,B)0"; SIGNAL Net_425 : bit; - ATTRIBUTE placement_force OF Net_425 : SIGNAL IS "U(3,3,B)1"; + ATTRIBUTE placement_force OF Net_425 : SIGNAL IS "U(3,5,B)1"; SIGNAL Net_428 : bit; - ATTRIBUTE placement_force OF Net_428 : SIGNAL IS "U(3,3,B)2"; + ATTRIBUTE placement_force OF Net_428 : SIGNAL IS "U(3,5,B)2"; SIGNAL Net_439 : bit; - ATTRIBUTE placement_force OF Net_439 : SIGNAL IS "U(3,3,A)0"; + ATTRIBUTE placement_force OF Net_439 : SIGNAL IS "U(3,5,A)1"; SIGNAL Net_479 : bit; - ATTRIBUTE placement_force OF Net_479 : SIGNAL IS "U(2,3,B)1"; + ATTRIBUTE placement_force OF Net_479 : SIGNAL IS "U(3,5,A)0"; + SIGNAL Net_585 : bit; + ATTRIBUTE placement_force OF Net_585 : SIGNAL IS "U(3,5,B)3"; SIGNAL Pin_1(0)__PA : bit; SIGNAL Pin_2(0)__PA : bit; SIGNAL Pin_3(0)__PA : bit; SIGNAL Pin_4(0)__PA : bit; + SIGNAL Pin_5(0)__PA : bit; SIGNAL Tx_1(0)__PA : bit; SIGNAL \\\LCD:LCDPort(0)\\__PA\ : bit; SIGNAL \\\LCD:LCDPort(1)\\__PA\ : bit; @@ -74,7 +79,7 @@ ARCHITECTURE __DEFAULT__ OF PSOC5_SPI_LSM303D IS SIGNAL \\\LCD:LCDPort(5)\\__PA\ : bit; SIGNAL \\\LCD:LCDPort(6)\\__PA\ : bit; SIGNAL \SPIM:BSPIM:cnt_enable\ : bit; - ATTRIBUTE placement_force OF \SPIM:BSPIM:cnt_enable\ : SIGNAL IS "U(2,3,A)0"; + ATTRIBUTE placement_force OF \SPIM:BSPIM:cnt_enable\ : SIGNAL IS "U(2,5,A)0"; SIGNAL \SPIM:BSPIM:cnt_tc\ : bit; SIGNAL \SPIM:BSPIM:count_0\ : bit; SIGNAL \SPIM:BSPIM:count_1\ : bit; @@ -84,30 +89,30 @@ ARCHITECTURE __DEFAULT__ OF PSOC5_SPI_LSM303D IS SIGNAL \SPIM:BSPIM:count_5\ : bit; SIGNAL \SPIM:BSPIM:count_6\ : bit; SIGNAL \SPIM:BSPIM:dpcounter_one\ : bit; - ATTRIBUTE placement_force OF \SPIM:BSPIM:dpcounter_one\ : SIGNAL IS "U(2,3,B)3"; + ATTRIBUTE placement_force OF \SPIM:BSPIM:dpcounter_one\ : SIGNAL IS "U(2,5,B)3"; SIGNAL \SPIM:BSPIM:is_spi_done\ : bit; ATTRIBUTE placement_force OF \SPIM:BSPIM:is_spi_done\ : SIGNAL IS "U(2,4,B)0"; SIGNAL \SPIM:BSPIM:ld_ident\ : bit; - ATTRIBUTE placement_force OF \SPIM:BSPIM:ld_ident\ : SIGNAL IS "U(3,3,A)1"; + ATTRIBUTE placement_force OF \SPIM:BSPIM:ld_ident\ : SIGNAL IS "U(2,5,B)1"; SIGNAL \SPIM:BSPIM:load_cond\ : bit; - ATTRIBUTE placement_force OF \SPIM:BSPIM:load_cond\ : SIGNAL IS "U(2,3,B)0"; + ATTRIBUTE placement_force OF \SPIM:BSPIM:load_cond\ : SIGNAL IS "U(2,5,B)0"; SIGNAL \SPIM:BSPIM:load_rx_data\ : bit; - ATTRIBUTE placement_force OF \SPIM:BSPIM:load_rx_data\ : SIGNAL IS "U(2,3,B)2"; + ATTRIBUTE placement_force OF \SPIM:BSPIM:load_rx_data\ : SIGNAL IS "U(2,5,B)2"; SIGNAL \SPIM:BSPIM:mosi_from_dp\ : bit; SIGNAL \SPIM:BSPIM:mosi_from_dp_reg\ : bit; ATTRIBUTE placement_force OF \SPIM:BSPIM:mosi_from_dp_reg\ : SIGNAL IS "U(3,4,A)0"; SIGNAL \SPIM:BSPIM:mosi_hs_reg\ : bit; - ATTRIBUTE placement_force OF \SPIM:BSPIM:mosi_hs_reg\ : SIGNAL IS "U(3,5,B)0"; + ATTRIBUTE placement_force OF \SPIM:BSPIM:mosi_hs_reg\ : SIGNAL IS "U(3,3,B)0"; SIGNAL \SPIM:BSPIM:mosi_pre_reg\ : bit; ATTRIBUTE placement_force OF \SPIM:BSPIM:mosi_pre_reg\ : SIGNAL IS "U(2,4,A)0"; SIGNAL \SPIM:BSPIM:rx_status_4\ : bit; SIGNAL \SPIM:BSPIM:rx_status_5\ : bit; SIGNAL \SPIM:BSPIM:rx_status_6\ : bit; - ATTRIBUTE placement_force OF \SPIM:BSPIM:rx_status_6\ : SIGNAL IS "U(2,5,A)0"; + ATTRIBUTE placement_force OF \SPIM:BSPIM:rx_status_6\ : SIGNAL IS "U(2,3,A)0"; SIGNAL \SPIM:BSPIM:state_0\ : bit; ATTRIBUTE placement_force OF \SPIM:BSPIM:state_0\ : SIGNAL IS "U(2,4,B)3"; SIGNAL \SPIM:BSPIM:state_1\ : bit; - ATTRIBUTE placement_force OF \SPIM:BSPIM:state_1\ : SIGNAL IS "U(2,3,A)1"; + ATTRIBUTE placement_force OF \SPIM:BSPIM:state_1\ : SIGNAL IS "U(2,5,A)1"; SIGNAL \SPIM:BSPIM:state_2\ : bit; ATTRIBUTE placement_force OF \SPIM:BSPIM:state_2\ : SIGNAL IS "U(2,4,B)1"; SIGNAL \SPIM:BSPIM:tx_status_0\ : bit; @@ -115,39 +120,57 @@ ARCHITECTURE __DEFAULT__ OF PSOC5_SPI_LSM303D IS SIGNAL \SPIM:BSPIM:tx_status_1\ : bit; SIGNAL \SPIM:BSPIM:tx_status_2\ : bit; SIGNAL \SPIM:BSPIM:tx_status_4\ : bit; - ATTRIBUTE placement_force OF \SPIM:BSPIM:tx_status_4\ : SIGNAL IS "U(2,3,A)2"; + ATTRIBUTE placement_force OF \SPIM:BSPIM:tx_status_4\ : SIGNAL IS "U(2,5,A)2"; SIGNAL \SPIM:Net_276\ : bit; ATTRIBUTE global_signal OF \SPIM:Net_276\ : SIGNAL IS true; SIGNAL \SPIM:Net_276_local\ : bit; - SIGNAL \SS:control_2\ : bit; SIGNAL \SS:control_3\ : bit; SIGNAL \SS:control_4\ : bit; SIGNAL \SS:control_5\ : bit; SIGNAL \SS:control_6\ : bit; SIGNAL \SS:control_7\ : bit; + SIGNAL \Timer_1:TimerUDB:control_0\ : bit; + SIGNAL \Timer_1:TimerUDB:control_1\ : bit; + SIGNAL \Timer_1:TimerUDB:control_2\ : bit; + SIGNAL \Timer_1:TimerUDB:control_3\ : bit; + SIGNAL \Timer_1:TimerUDB:control_4\ : bit; + SIGNAL \Timer_1:TimerUDB:control_5\ : bit; + SIGNAL \Timer_1:TimerUDB:control_6\ : bit; + SIGNAL \Timer_1:TimerUDB:control_7\ : bit; + SIGNAL \Timer_1:TimerUDB:per_zero\ : bit; + SIGNAL \Timer_1:TimerUDB:run_mode\ : bit; + ATTRIBUTE placement_force OF \Timer_1:TimerUDB:run_mode\ : SIGNAL IS "U(2,0,A)3"; + SIGNAL \Timer_1:TimerUDB:status_2\ : bit; + SIGNAL \Timer_1:TimerUDB:status_3\ : bit; + SIGNAL \Timer_1:TimerUDB:status_tc\ : bit; + ATTRIBUTE placement_force OF \Timer_1:TimerUDB:status_tc\ : SIGNAL IS "U(2,0,A)2"; + SIGNAL \Timer_1:TimerUDB:timer_enable\ : bit; + ATTRIBUTE placement_force OF \Timer_1:TimerUDB:timer_enable\ : SIGNAL IS "U(2,0,A)0"; + SIGNAL \Timer_1:TimerUDB:trig_disable\ : bit; + ATTRIBUTE placement_force OF \Timer_1:TimerUDB:trig_disable\ : SIGNAL IS "U(2,0,A)1"; SIGNAL \UART_1:BUART:counter_load_not\ : bit; - ATTRIBUTE placement_force OF \UART_1:BUART:counter_load_not\ : SIGNAL IS "U(3,5,B)1"; + ATTRIBUTE placement_force OF \UART_1:BUART:counter_load_not\ : SIGNAL IS "U(3,3,B)1"; SIGNAL \UART_1:BUART:tx_bitclk\ : bit; - ATTRIBUTE placement_force OF \UART_1:BUART:tx_bitclk\ : SIGNAL IS "U(2,5,B)0"; + ATTRIBUTE placement_force OF \UART_1:BUART:tx_bitclk\ : SIGNAL IS "U(2,3,B)0"; SIGNAL \UART_1:BUART:tx_bitclk_dp\ : bit; SIGNAL \UART_1:BUART:tx_bitclk_enable_pre\ : bit; - ATTRIBUTE placement_force OF \UART_1:BUART:tx_bitclk_enable_pre\ : SIGNAL IS "U(2,5,B)1"; + ATTRIBUTE placement_force OF \UART_1:BUART:tx_bitclk_enable_pre\ : SIGNAL IS "U(2,3,B)1"; SIGNAL \UART_1:BUART:tx_counter_dp\ : bit; SIGNAL \UART_1:BUART:tx_fifo_empty\ : bit; SIGNAL \UART_1:BUART:tx_fifo_notfull\ : bit; SIGNAL \UART_1:BUART:tx_shift_out\ : bit; SIGNAL \UART_1:BUART:tx_state_0\ : bit; - ATTRIBUTE placement_force OF \UART_1:BUART:tx_state_0\ : SIGNAL IS "U(2,5,A)1"; + ATTRIBUTE placement_force OF \UART_1:BUART:tx_state_0\ : SIGNAL IS "U(2,3,A)1"; SIGNAL \UART_1:BUART:tx_state_1\ : bit; - ATTRIBUTE placement_force OF \UART_1:BUART:tx_state_1\ : SIGNAL IS "U(2,5,A)2"; + ATTRIBUTE placement_force OF \UART_1:BUART:tx_state_1\ : SIGNAL IS "U(3,0,B)0"; SIGNAL \UART_1:BUART:tx_state_2\ : bit; - ATTRIBUTE placement_force OF \UART_1:BUART:tx_state_2\ : SIGNAL IS "U(3,5,A)1"; + ATTRIBUTE placement_force OF \UART_1:BUART:tx_state_2\ : SIGNAL IS "U(3,3,A)1"; SIGNAL \UART_1:BUART:tx_status_0\ : bit; - ATTRIBUTE placement_force OF \UART_1:BUART:tx_status_0\ : SIGNAL IS "U(2,5,A)3"; + ATTRIBUTE placement_force OF \UART_1:BUART:tx_status_0\ : SIGNAL IS "U(2,3,A)3"; SIGNAL \UART_1:BUART:tx_status_2\ : bit; - ATTRIBUTE placement_force OF \UART_1:BUART:tx_status_2\ : SIGNAL IS "U(3,4,A)2"; + ATTRIBUTE placement_force OF \UART_1:BUART:tx_status_2\ : SIGNAL IS "U(2,3,B)3"; SIGNAL \UART_1:BUART:txn\ : bit; - ATTRIBUTE placement_force OF \UART_1:BUART:txn\ : SIGNAL IS "U(3,5,A)0"; + ATTRIBUTE placement_force OF \UART_1:BUART:txn\ : SIGNAL IS "U(3,3,A)0"; SIGNAL __ONE__ : bit; ATTRIBUTE POWER OF __ONE__ : SIGNAL IS true; SIGNAL __ZERO__ : bit; @@ -157,27 +180,44 @@ ARCHITECTURE __DEFAULT__ OF PSOC5_SPI_LSM303D IS SIGNAL m_sclk_pin(0)__PA : bit; SIGNAL mywire_1_0 : bit; SIGNAL mywire_1_1 : bit; + SIGNAL mywire_1_2 : bit; SIGNAL tmpOE__m_miso_pin_net_0 : bit; ATTRIBUTE POWER OF tmpOE__m_miso_pin_net_0 : SIGNAL IS true; SIGNAL zero : bit; ATTRIBUTE GROUND OF zero : SIGNAL IS true; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.ce0__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.cl0__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.z0__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.ff0__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.ce1__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.cl1__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.z1__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.ff1__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.co_msb__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.sol_msb__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.cfbo__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u1.sor__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u1.cmsbo__sig\ : bit; ATTRIBUTE Location OF ClockBlock : LABEL IS "F(Clock,0)"; + ATTRIBUTE Location OF ClockBlock_1k__SYNC : LABEL IS "U(3,0)"; ATTRIBUTE lib_model OF Net_234 : LABEL IS "macrocell1"; ATTRIBUTE Location OF Net_234 : LABEL IS "U(3,4)"; ATTRIBUTE lib_model OF Net_30 : LABEL IS "macrocell2"; - ATTRIBUTE Location OF Net_30 : LABEL IS "U(3,3)"; + ATTRIBUTE Location OF Net_30 : LABEL IS "U(3,5)"; ATTRIBUTE lib_model OF Net_419 : LABEL IS "macrocell3"; - ATTRIBUTE Location OF Net_419 : LABEL IS "U(3,3)"; + ATTRIBUTE Location OF Net_419 : LABEL IS "U(3,5)"; ATTRIBUTE lib_model OF Net_422 : LABEL IS "macrocell4"; - ATTRIBUTE Location OF Net_422 : LABEL IS "U(3,3)"; + ATTRIBUTE Location OF Net_422 : LABEL IS "U(3,5)"; ATTRIBUTE lib_model OF Net_425 : LABEL IS "macrocell5"; - ATTRIBUTE Location OF Net_425 : LABEL IS "U(3,3)"; + ATTRIBUTE Location OF Net_425 : LABEL IS "U(3,5)"; ATTRIBUTE lib_model OF Net_428 : LABEL IS "macrocell6"; - ATTRIBUTE Location OF Net_428 : LABEL IS "U(3,3)"; + ATTRIBUTE Location OF Net_428 : LABEL IS "U(3,5)"; ATTRIBUTE lib_model OF Net_439 : LABEL IS "macrocell7"; - ATTRIBUTE Location OF Net_439 : LABEL IS "U(3,3)"; + ATTRIBUTE Location OF Net_439 : LABEL IS "U(3,5)"; ATTRIBUTE lib_model OF Net_479 : LABEL IS "macrocell8"; - ATTRIBUTE Location OF Net_479 : LABEL IS "U(2,3)"; + ATTRIBUTE Location OF Net_479 : LABEL IS "U(3,5)"; + ATTRIBUTE lib_model OF Net_585 : LABEL IS "macrocell9"; + ATTRIBUTE Location OF Net_585 : LABEL IS "U(3,5)"; ATTRIBUTE lib_model OF Pin_1(0) : LABEL IS "iocell1"; ATTRIBUTE Location OF Pin_1(0) : LABEL IS "P3[0]"; ATTRIBUTE lib_model OF Pin_2(0) : LABEL IS "iocell2"; @@ -186,90 +226,108 @@ ARCHITECTURE __DEFAULT__ OF PSOC5_SPI_LSM303D IS ATTRIBUTE Location OF Pin_3(0) : LABEL IS "P3[2]"; ATTRIBUTE lib_model OF Pin_4(0) : LABEL IS "iocell4"; ATTRIBUTE Location OF Pin_4(0) : LABEL IS "P3[3]"; - ATTRIBUTE lib_model OF Tx_1(0) : LABEL IS "iocell5"; + ATTRIBUTE lib_model OF Pin_5(0) : LABEL IS "iocell5"; + ATTRIBUTE Location OF Pin_5(0) : LABEL IS "P3[4]"; + ATTRIBUTE lib_model OF Tx_1(0) : LABEL IS "iocell6"; ATTRIBUTE Location OF Tx_1(0) : LABEL IS "P3[7]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(0)\ : LABEL IS "iocell6"; + ATTRIBUTE lib_model OF \LCD:LCDPort(0)\ : LABEL IS "iocell7"; ATTRIBUTE Location OF \LCD:LCDPort(0)\ : LABEL IS "P2[0]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(1)\ : LABEL IS "iocell7"; + ATTRIBUTE lib_model OF \LCD:LCDPort(1)\ : LABEL IS "iocell8"; ATTRIBUTE Location OF \LCD:LCDPort(1)\ : LABEL IS "P2[1]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(2)\ : LABEL IS "iocell8"; + ATTRIBUTE lib_model OF \LCD:LCDPort(2)\ : LABEL IS "iocell9"; ATTRIBUTE Location OF \LCD:LCDPort(2)\ : LABEL IS "P2[2]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(3)\ : LABEL IS "iocell9"; + ATTRIBUTE lib_model OF \LCD:LCDPort(3)\ : LABEL IS "iocell10"; ATTRIBUTE Location OF \LCD:LCDPort(3)\ : LABEL IS "P2[3]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(4)\ : LABEL IS "iocell10"; + ATTRIBUTE lib_model OF \LCD:LCDPort(4)\ : LABEL IS "iocell11"; ATTRIBUTE Location OF \LCD:LCDPort(4)\ : LABEL IS "P2[4]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(5)\ : LABEL IS "iocell11"; + ATTRIBUTE lib_model OF \LCD:LCDPort(5)\ : LABEL IS "iocell12"; ATTRIBUTE Location OF \LCD:LCDPort(5)\ : LABEL IS "P2[5]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(6)\ : LABEL IS "iocell12"; + ATTRIBUTE lib_model OF \LCD:LCDPort(6)\ : LABEL IS "iocell13"; ATTRIBUTE Location OF \LCD:LCDPort(6)\ : LABEL IS "P2[6]"; ATTRIBUTE Location OF \SPIM:BSPIM:BitCounter\ : LABEL IS "U(2,4)"; ATTRIBUTE lib_model OF \SPIM:BSPIM:RxStsReg\ : LABEL IS "statusicell1"; - ATTRIBUTE Location OF \SPIM:BSPIM:RxStsReg\ : LABEL IS "U(2,5)"; + ATTRIBUTE Location OF \SPIM:BSPIM:RxStsReg\ : LABEL IS "U(3,4)"; ATTRIBUTE lib_model OF \SPIM:BSPIM:TxStsReg\ : LABEL IS "statusicell2"; - ATTRIBUTE Location OF \SPIM:BSPIM:TxStsReg\ : LABEL IS "U(2,3)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:cnt_enable\ : LABEL IS "macrocell9"; - ATTRIBUTE Location OF \SPIM:BSPIM:cnt_enable\ : LABEL IS "U(2,3)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:dpcounter_one\ : LABEL IS "macrocell10"; - ATTRIBUTE Location OF \SPIM:BSPIM:dpcounter_one\ : LABEL IS "U(2,3)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:is_spi_done\ : LABEL IS "macrocell11"; + ATTRIBUTE Location OF \SPIM:BSPIM:TxStsReg\ : LABEL IS "U(2,5)"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:cnt_enable\ : LABEL IS "macrocell10"; + ATTRIBUTE Location OF \SPIM:BSPIM:cnt_enable\ : LABEL IS "U(2,5)"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:dpcounter_one\ : LABEL IS "macrocell11"; + ATTRIBUTE Location OF \SPIM:BSPIM:dpcounter_one\ : LABEL IS "U(2,5)"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:is_spi_done\ : LABEL IS "macrocell12"; ATTRIBUTE Location OF \SPIM:BSPIM:is_spi_done\ : LABEL IS "U(2,4)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:ld_ident\ : LABEL IS "macrocell12"; - ATTRIBUTE Location OF \SPIM:BSPIM:ld_ident\ : LABEL IS "U(3,3)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:load_cond\ : LABEL IS "macrocell13"; - ATTRIBUTE Location OF \SPIM:BSPIM:load_cond\ : LABEL IS "U(2,3)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:load_rx_data\ : LABEL IS "macrocell14"; - ATTRIBUTE Location OF \SPIM:BSPIM:load_rx_data\ : LABEL IS "U(2,3)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:mosi_from_dp_reg\ : LABEL IS "macrocell15"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:ld_ident\ : LABEL IS "macrocell13"; + ATTRIBUTE Location OF \SPIM:BSPIM:ld_ident\ : LABEL IS "U(2,5)"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:load_cond\ : LABEL IS "macrocell14"; + ATTRIBUTE Location OF \SPIM:BSPIM:load_cond\ : LABEL IS "U(2,5)"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:load_rx_data\ : LABEL IS "macrocell15"; + ATTRIBUTE Location OF \SPIM:BSPIM:load_rx_data\ : LABEL IS "U(2,5)"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:mosi_from_dp_reg\ : LABEL IS "macrocell16"; ATTRIBUTE Location OF \SPIM:BSPIM:mosi_from_dp_reg\ : LABEL IS "U(3,4)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:mosi_hs_reg\ : LABEL IS "macrocell16"; - ATTRIBUTE Location OF \SPIM:BSPIM:mosi_hs_reg\ : LABEL IS "U(3,5)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:mosi_pre_reg\ : LABEL IS "macrocell17"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:mosi_hs_reg\ : LABEL IS "macrocell17"; + ATTRIBUTE Location OF \SPIM:BSPIM:mosi_hs_reg\ : LABEL IS "U(3,3)"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:mosi_pre_reg\ : LABEL IS "macrocell18"; ATTRIBUTE Location OF \SPIM:BSPIM:mosi_pre_reg\ : LABEL IS "U(2,4)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:rx_status_6\ : LABEL IS "macrocell18"; - ATTRIBUTE Location OF \SPIM:BSPIM:rx_status_6\ : LABEL IS "U(2,5)"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:rx_status_6\ : LABEL IS "macrocell19"; + ATTRIBUTE Location OF \SPIM:BSPIM:rx_status_6\ : LABEL IS "U(2,3)"; ATTRIBUTE lib_model OF \SPIM:BSPIM:sR8:Dp:u0\ : LABEL IS "datapathcell1"; ATTRIBUTE Location OF \SPIM:BSPIM:sR8:Dp:u0\ : LABEL IS "U(2,4)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:state_0\ : LABEL IS "macrocell19"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:state_0\ : LABEL IS "macrocell20"; ATTRIBUTE Location OF \SPIM:BSPIM:state_0\ : LABEL IS "U(2,4)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:state_1\ : LABEL IS "macrocell20"; - ATTRIBUTE Location OF \SPIM:BSPIM:state_1\ : LABEL IS "U(2,3)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:state_2\ : LABEL IS "macrocell21"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:state_1\ : LABEL IS "macrocell21"; + ATTRIBUTE Location OF \SPIM:BSPIM:state_1\ : LABEL IS "U(2,5)"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:state_2\ : LABEL IS "macrocell22"; ATTRIBUTE Location OF \SPIM:BSPIM:state_2\ : LABEL IS "U(2,4)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:tx_status_0\ : LABEL IS "macrocell22"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:tx_status_0\ : LABEL IS "macrocell23"; ATTRIBUTE Location OF \SPIM:BSPIM:tx_status_0\ : LABEL IS "U(2,4)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:tx_status_4\ : LABEL IS "macrocell23"; - ATTRIBUTE Location OF \SPIM:BSPIM:tx_status_4\ : LABEL IS "U(2,3)"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:tx_status_4\ : LABEL IS "macrocell24"; + ATTRIBUTE Location OF \SPIM:BSPIM:tx_status_4\ : LABEL IS "U(2,5)"; ATTRIBUTE lib_model OF \SS:Async:ctrl_reg\ : LABEL IS "controlcell1"; - ATTRIBUTE Location OF \SS:Async:ctrl_reg\ : LABEL IS "U(3,3)"; - ATTRIBUTE lib_model OF \UART_1:BUART:counter_load_not\ : LABEL IS "macrocell24"; - ATTRIBUTE Location OF \UART_1:BUART:counter_load_not\ : LABEL IS "U(3,5)"; - ATTRIBUTE lib_model OF \UART_1:BUART:sTX:TxShifter:u0\ : LABEL IS "datapathcell2"; - ATTRIBUTE Location OF \UART_1:BUART:sTX:TxShifter:u0\ : LABEL IS "U(3,5)"; - ATTRIBUTE lib_model OF \UART_1:BUART:sTX:TxSts\ : LABEL IS "statusicell3"; - ATTRIBUTE Location OF \UART_1:BUART:sTX:TxSts\ : LABEL IS "U(3,4)"; - ATTRIBUTE lib_model OF \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\ : LABEL IS "datapathcell3"; - ATTRIBUTE Location OF \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\ : LABEL IS "U(2,5)"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_bitclk\ : LABEL IS "macrocell25"; - ATTRIBUTE Location OF \UART_1:BUART:tx_bitclk\ : LABEL IS "U(2,5)"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_bitclk_enable_pre\ : LABEL IS "macrocell26"; - ATTRIBUTE Location OF \UART_1:BUART:tx_bitclk_enable_pre\ : LABEL IS "U(2,5)"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_state_0\ : LABEL IS "macrocell27"; - ATTRIBUTE Location OF \UART_1:BUART:tx_state_0\ : LABEL IS "U(2,5)"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_state_1\ : LABEL IS "macrocell28"; - ATTRIBUTE Location OF \UART_1:BUART:tx_state_1\ : LABEL IS "U(2,5)"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_state_2\ : LABEL IS "macrocell29"; - ATTRIBUTE Location OF \UART_1:BUART:tx_state_2\ : LABEL IS "U(3,5)"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_status_0\ : LABEL IS "macrocell30"; - ATTRIBUTE Location OF \UART_1:BUART:tx_status_0\ : LABEL IS "U(2,5)"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_status_2\ : LABEL IS "macrocell31"; - ATTRIBUTE Location OF \UART_1:BUART:tx_status_2\ : LABEL IS "U(3,4)"; - ATTRIBUTE lib_model OF \UART_1:BUART:txn\ : LABEL IS "macrocell32"; - ATTRIBUTE Location OF \UART_1:BUART:txn\ : LABEL IS "U(3,5)"; - ATTRIBUTE lib_model OF m_miso_pin(0) : LABEL IS "iocell13"; + ATTRIBUTE Location OF \SS:Async:ctrl_reg\ : LABEL IS "U(3,5)"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:nrstSts:stsreg\ : LABEL IS "statusicell3"; + ATTRIBUTE Location OF \Timer_1:TimerUDB:nrstSts:stsreg\ : LABEL IS "U(2,0)"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:run_mode\ : LABEL IS "macrocell25"; + ATTRIBUTE Location OF \Timer_1:TimerUDB:run_mode\ : LABEL IS "U(2,0)"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\ : LABEL IS "controlcell2"; + ATTRIBUTE Location OF \Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\ : LABEL IS "U(2,0)"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:sT16:timerdp:u0\ : LABEL IS "datapathcell2"; + ATTRIBUTE Location OF \Timer_1:TimerUDB:sT16:timerdp:u0\ : LABEL IS "U(2,0)"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:sT16:timerdp:u1\ : LABEL IS "datapathcell3"; + ATTRIBUTE Location OF \Timer_1:TimerUDB:sT16:timerdp:u1\ : LABEL IS "U(3,0)"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:status_tc\ : LABEL IS "macrocell26"; + ATTRIBUTE Location OF \Timer_1:TimerUDB:status_tc\ : LABEL IS "U(2,0)"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:timer_enable\ : LABEL IS "macrocell27"; + ATTRIBUTE Location OF \Timer_1:TimerUDB:timer_enable\ : LABEL IS "U(2,0)"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:trig_disable\ : LABEL IS "macrocell28"; + ATTRIBUTE Location OF \Timer_1:TimerUDB:trig_disable\ : LABEL IS "U(2,0)"; + ATTRIBUTE lib_model OF \UART_1:BUART:counter_load_not\ : LABEL IS "macrocell29"; + ATTRIBUTE Location OF \UART_1:BUART:counter_load_not\ : LABEL IS "U(3,3)"; + ATTRIBUTE lib_model OF \UART_1:BUART:sTX:TxShifter:u0\ : LABEL IS "datapathcell4"; + ATTRIBUTE Location OF \UART_1:BUART:sTX:TxShifter:u0\ : LABEL IS "U(2,3)"; + ATTRIBUTE lib_model OF \UART_1:BUART:sTX:TxSts\ : LABEL IS "statusicell4"; + ATTRIBUTE Location OF \UART_1:BUART:sTX:TxSts\ : LABEL IS "U(2,3)"; + ATTRIBUTE lib_model OF \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\ : LABEL IS "datapathcell5"; + ATTRIBUTE Location OF \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\ : LABEL IS "U(3,3)"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_bitclk\ : LABEL IS "macrocell30"; + ATTRIBUTE Location OF \UART_1:BUART:tx_bitclk\ : LABEL IS "U(2,3)"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_bitclk_enable_pre\ : LABEL IS "macrocell31"; + ATTRIBUTE Location OF \UART_1:BUART:tx_bitclk_enable_pre\ : LABEL IS "U(2,3)"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_state_0\ : LABEL IS "macrocell32"; + ATTRIBUTE Location OF \UART_1:BUART:tx_state_0\ : LABEL IS "U(2,3)"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_state_1\ : LABEL IS "macrocell33"; + ATTRIBUTE Location OF \UART_1:BUART:tx_state_1\ : LABEL IS "U(3,0)"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_state_2\ : LABEL IS "macrocell34"; + ATTRIBUTE Location OF \UART_1:BUART:tx_state_2\ : LABEL IS "U(3,3)"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_status_0\ : LABEL IS "macrocell35"; + ATTRIBUTE Location OF \UART_1:BUART:tx_status_0\ : LABEL IS "U(2,3)"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_status_2\ : LABEL IS "macrocell36"; + ATTRIBUTE Location OF \UART_1:BUART:tx_status_2\ : LABEL IS "U(2,3)"; + ATTRIBUTE lib_model OF \UART_1:BUART:txn\ : LABEL IS "macrocell37"; + ATTRIBUTE Location OF \UART_1:BUART:txn\ : LABEL IS "U(3,3)"; + ATTRIBUTE lib_model OF m_miso_pin(0) : LABEL IS "iocell14"; ATTRIBUTE Location OF m_miso_pin(0) : LABEL IS "P0[0]"; - ATTRIBUTE lib_model OF m_mosi_pin(0) : LABEL IS "iocell14"; + ATTRIBUTE lib_model OF m_mosi_pin(0) : LABEL IS "iocell15"; ATTRIBUTE Location OF m_mosi_pin(0) : LABEL IS "P0[5]"; - ATTRIBUTE lib_model OF m_sclk_pin(0) : LABEL IS "iocell15"; + ATTRIBUTE lib_model OF m_sclk_pin(0) : LABEL IS "iocell16"; ATTRIBUTE Location OF m_sclk_pin(0) : LABEL IS "P0[6]"; COMPONENT abufcell END COMPONENT; @@ -1189,6 +1247,13 @@ BEGIN dclk_glb_1 => Net_191, dclk_1 => Net_191_local); + ClockBlock_1k__SYNC:synccell + PORT MAP( + in => ClockBlock_1k, + out => ClockBlock_1k__SYNC_OUT, + clock => ClockBlock_BUS_CLK, + clk_en => open); + Net_234:macrocell GENERIC MAP( eqn_main => "(!main_0)") @@ -1206,39 +1271,43 @@ BEGIN Net_419:macrocell GENERIC MAP( - eqn_main => "(!main_0 * !main_1 * !main_2)") + eqn_main => "(!main_0 * !main_1 * !main_2 * !main_3)") PORT MAP( q => Net_419, main_0 => Net_439, - main_1 => mywire_1_1, - main_2 => mywire_1_0); + main_1 => mywire_1_2, + main_2 => mywire_1_1, + main_3 => mywire_1_0); Net_422:macrocell GENERIC MAP( - eqn_main => "(!main_0 * !main_1 * main_2)") + eqn_main => "(!main_0 * !main_1 * !main_2 * main_3)") PORT MAP( q => Net_422, main_0 => Net_439, - main_1 => mywire_1_1, - main_2 => mywire_1_0); + main_1 => mywire_1_2, + main_2 => mywire_1_1, + main_3 => mywire_1_0); Net_425:macrocell GENERIC MAP( - eqn_main => "(!main_0 * main_1 * main_2)") + eqn_main => "(!main_0 * !main_1 * main_2 * main_3)") PORT MAP( q => Net_425, main_0 => Net_439, - main_1 => mywire_1_1, - main_2 => mywire_1_0); + main_1 => mywire_1_2, + main_2 => mywire_1_1, + main_3 => mywire_1_0); Net_428:macrocell GENERIC MAP( - eqn_main => "(!main_0 * main_1 * !main_2)") + eqn_main => "(!main_0 * !main_1 * main_2 * !main_3)") PORT MAP( q => Net_428, main_0 => Net_439, - main_1 => mywire_1_1, - main_2 => mywire_1_0); + main_1 => mywire_1_2, + main_2 => mywire_1_1, + main_3 => mywire_1_0); Net_439:macrocell GENERIC MAP( @@ -1262,6 +1331,16 @@ BEGIN main_2 => \SPIM:BSPIM:state_1\, main_3 => \SPIM:BSPIM:state_0\); + Net_585:macrocell + GENERIC MAP( + eqn_main => "(!main_0 * main_1 * !main_2 * !main_3)") + PORT MAP( + q => Net_585, + main_0 => Net_439, + main_1 => mywire_1_2, + main_2 => mywire_1_1, + main_3 => mywire_1_0); + Pin_1:logicalport GENERIC MAP( drive_mode => "010", @@ -1610,6 +1689,93 @@ BEGIN out_clock_en => '1', out_reset => '0'); + Pin_5:logicalport + GENERIC MAP( + drive_mode => "010", + ibuf_enabled => "1", + id => "f04dd9ba-954e-4352-a3f2-4deb8634d958", + init_dr_st => "1", + input_clk_en => 0, + input_sync => "1", + input_sync_mode => "0", + intr_mode => "00", + invert_in_clock => 0, + invert_in_clock_en => 0, + invert_in_reset => 0, + invert_out_clock => 0, + invert_out_clock_en => 0, + invert_out_reset => 0, + io_voltage => "", + layout_mode => "CONTIGUOUS", + oe_conn => "0", + oe_reset => 0, + oe_sync => "0", + output_clk_en => 0, + output_clock_mode => "0", + output_conn => "1", + output_mode => "0", + output_reset => 0, + output_sync => "0", + pa_in_clock => -1, + pa_in_clock_en => -1, + pa_in_reset => -1, + pa_out_clock => -1, + pa_out_clock_en => -1, + pa_out_reset => -1, + pin_aliases => "", + pin_mode => "O", + por_state => 4, + port_alias_group => "", + port_alias_required => 0, + sio_group_cnt => 0, + sio_hifreq => "", + sio_hyst => "0", + sio_ibuf => "00000000", + sio_info => "00", + sio_obuf => "00000000", + sio_refsel => "00000000", + sio_vtrip => "00000000", + slew_rate => "0", + spanning => 0, + sw_only => 0, + use_annotation => "0", + vtrip => "10", + width => 1, + in_clk_inv => 0, + in_clken_inv => 0, + in_clken_mode => 1, + in_rst_inv => 0, + out_clk_inv => 0, + out_clken_inv => 0, + out_clken_mode => 1, + out_rst_inv => 0) + PORT MAP( + in_clock_en => open, + in_reset => open, + out_clock_en => open, + out_reset => open); + + Pin_5(0):iocell + GENERIC MAP( + in_sync_mode => 0, + out_sync_mode => 0, + oe_sync_mode => 0, + logicalport => "Pin_5", + logicalport_pin_id => 0, + io_capabilities => "0000000000000000000000100000000000000000000000000000000000000001") + PORT MAP( + pa_out => Pin_5(0)__PA, + oe => open, + pin_input => Net_585, + pad_out => Pin_5(0)_PAD, + pad_in => Pin_5(0)_PAD, + in_clock => open, + in_clock_en => '1', + in_reset => '0', + out_clock => open, + out_clock_en => '1', + out_reset => '0'); + Tx_1:logicalport GENERIC MAP( drive_mode => "110", @@ -2196,11 +2362,180 @@ BEGIN control_5 => \SS:control_5\, control_4 => \SS:control_4\, control_3 => \SS:control_3\, - control_2 => \SS:control_2\, + control_2 => mywire_1_2, control_1 => mywire_1_1, control_0 => mywire_1_0, busclk => ClockBlock_BUS_CLK); + \Timer_1:TimerUDB:nrstSts:stsreg\:statusicell + GENERIC MAP( + cy_force_order => 1, + cy_int_mask => "1111111", + cy_md_select => "0000011") + PORT MAP( + clock => ClockBlock_BUS_CLK, + status_6 => open, + status_5 => open, + status_4 => open, + status_3 => \Timer_1:TimerUDB:status_3\, + status_2 => \Timer_1:TimerUDB:status_2\, + status_1 => open, + status_0 => \Timer_1:TimerUDB:status_tc\, + clk_en => ClockBlock_1k__SYNC_OUT); + + \Timer_1:TimerUDB:run_mode\:macrocell + GENERIC MAP( + eqn_main => "(main_0)") + PORT MAP( + q => \Timer_1:TimerUDB:run_mode\, + main_0 => \Timer_1:TimerUDB:control_7\, + clock_0 => ClockBlock_BUS_CLK, + clk_en => ClockBlock_1k__SYNC_OUT); + + \Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\:controlcell + GENERIC MAP( + cy_ctrl_mode_0 => "00000000", + cy_ctrl_mode_1 => "00000000", + cy_ext_reset => 0, + cy_force_order => 1, + cy_init_value => "00000000") + PORT MAP( + control_7 => \Timer_1:TimerUDB:control_7\, + control_6 => \Timer_1:TimerUDB:control_6\, + control_5 => \Timer_1:TimerUDB:control_5\, + control_4 => \Timer_1:TimerUDB:control_4\, + control_3 => \Timer_1:TimerUDB:control_3\, + control_2 => \Timer_1:TimerUDB:control_2\, + control_1 => \Timer_1:TimerUDB:control_1\, + control_0 => \Timer_1:TimerUDB:control_0\, + busclk => ClockBlock_BUS_CLK); + + \Timer_1:TimerUDB:sT16:timerdp:u0\:datapathcell + GENERIC MAP( + a0_init => "00000000", + a1_init => "00000000", + ce0_sync => 1, + ce1_sync => 1, + cl0_sync => 1, + cl1_sync => 1, + cmsb_sync => 1, + co_msb_sync => 1, + cy_dpconfig => "0000000001000000000000000100000001000000010000000000000010000000000000001000000000000000100000000000000010000000000000001000000011111111000000001111111111111111000000000000000000000001000000000000000000011000", + d0_init => "00000000", + d1_init => "00000000", + f0_blk_sync => 1, + f0_bus_sync => 1, + f1_blk_sync => 1, + f1_bus_sync => 1, + ff0_sync => 1, + ff1_sync => 1, + ov_msb_sync => 1, + so_sync => 1, + z0_sync => 1, + z1_sync => 1, + uses_p_in => '0', + uses_p_out => '0') + PORT MAP( + clock => ClockBlock_BUS_CLK, + cs_addr_1 => \Timer_1:TimerUDB:timer_enable\, + cs_addr_0 => \Timer_1:TimerUDB:per_zero\, + clk_en => ClockBlock_1k__SYNC_OUT, + busclk => ClockBlock_BUS_CLK, + ce0 => \Timer_1:TimerUDB:sT16:timerdp:u0.ce0__sig\, + cl0 => \Timer_1:TimerUDB:sT16:timerdp:u0.cl0__sig\, + z0 => \Timer_1:TimerUDB:sT16:timerdp:u0.z0__sig\, + ff0 => \Timer_1:TimerUDB:sT16:timerdp:u0.ff0__sig\, + ce1 => \Timer_1:TimerUDB:sT16:timerdp:u0.ce1__sig\, + cl1 => \Timer_1:TimerUDB:sT16:timerdp:u0.cl1__sig\, + z1 => \Timer_1:TimerUDB:sT16:timerdp:u0.z1__sig\, + ff1 => \Timer_1:TimerUDB:sT16:timerdp:u0.ff1__sig\, + co_msb => \Timer_1:TimerUDB:sT16:timerdp:u0.co_msb__sig\, + sol_msb => \Timer_1:TimerUDB:sT16:timerdp:u0.sol_msb__sig\, + cfbo => \Timer_1:TimerUDB:sT16:timerdp:u0.cfbo__sig\, + sil => \Timer_1:TimerUDB:sT16:timerdp:u1.sor__sig\, + cmsbi => \Timer_1:TimerUDB:sT16:timerdp:u1.cmsbo__sig\); + + \Timer_1:TimerUDB:sT16:timerdp:u1\:datapathcell + GENERIC MAP( + a0_init => "00000000", + a1_init => "00000000", + ce0_sync => 1, + ce1_sync => 1, + cl0_sync => 1, + cl1_sync => 1, + cmsb_sync => 1, + co_msb_sync => 1, + cy_dpconfig => "0000000001000000000000000100000001000000010000000000000010000000000000001000000000000000100000000000000010000000000000001000000011111111000000001111111111111111100000110000000000000001000000110000000000011000", + d0_init => "00000000", + d1_init => "00000000", + f0_blk_sync => 1, + f0_bus_sync => 1, + f1_blk_sync => 1, + f1_bus_sync => 1, + ff0_sync => 1, + ff1_sync => 1, + ov_msb_sync => 1, + so_sync => 1, + z0_sync => 1, + z1_sync => 1, + uses_p_in => '0', + uses_p_out => '0') + PORT MAP( + clock => ClockBlock_BUS_CLK, + cs_addr_1 => \Timer_1:TimerUDB:timer_enable\, + cs_addr_0 => \Timer_1:TimerUDB:per_zero\, + z0_comb => \Timer_1:TimerUDB:per_zero\, + f0_bus_stat_comb => \Timer_1:TimerUDB:status_3\, + f0_blk_stat_comb => \Timer_1:TimerUDB:status_2\, + busclk => ClockBlock_BUS_CLK, + clk_en => ClockBlock_1k__SYNC_OUT, + ce0i => \Timer_1:TimerUDB:sT16:timerdp:u0.ce0__sig\, + cl0i => \Timer_1:TimerUDB:sT16:timerdp:u0.cl0__sig\, + z0i => \Timer_1:TimerUDB:sT16:timerdp:u0.z0__sig\, + ff0i => \Timer_1:TimerUDB:sT16:timerdp:u0.ff0__sig\, + ce1i => \Timer_1:TimerUDB:sT16:timerdp:u0.ce1__sig\, + cl1i => \Timer_1:TimerUDB:sT16:timerdp:u0.cl1__sig\, + z1i => \Timer_1:TimerUDB:sT16:timerdp:u0.z1__sig\, + ff1i => \Timer_1:TimerUDB:sT16:timerdp:u0.ff1__sig\, + ci => \Timer_1:TimerUDB:sT16:timerdp:u0.co_msb__sig\, + sir => \Timer_1:TimerUDB:sT16:timerdp:u0.sol_msb__sig\, + cfbi => \Timer_1:TimerUDB:sT16:timerdp:u0.cfbo__sig\, + sor => \Timer_1:TimerUDB:sT16:timerdp:u1.sor__sig\, + cmsbo => \Timer_1:TimerUDB:sT16:timerdp:u1.cmsbo__sig\); + + \Timer_1:TimerUDB:status_tc\:macrocell + GENERIC MAP( + eqn_main => "(main_0 * main_1)") + PORT MAP( + q => \Timer_1:TimerUDB:status_tc\, + main_0 => \Timer_1:TimerUDB:run_mode\, + main_1 => \Timer_1:TimerUDB:per_zero\); + + \Timer_1:TimerUDB:timer_enable\:macrocell + GENERIC MAP( + eqn_main => "(main_0 * !main_1 * !main_4) + (main_0 * !main_2 * !main_4) + (main_0 * !main_3 * !main_4)") + PORT MAP( + q => \Timer_1:TimerUDB:timer_enable\, + clock_0 => ClockBlock_BUS_CLK, + clk_en => ClockBlock_1k__SYNC_OUT, + main_0 => \Timer_1:TimerUDB:control_7\, + main_1 => \Timer_1:TimerUDB:timer_enable\, + main_2 => \Timer_1:TimerUDB:run_mode\, + main_3 => \Timer_1:TimerUDB:per_zero\, + main_4 => \Timer_1:TimerUDB:trig_disable\); + + \Timer_1:TimerUDB:trig_disable\:macrocell + GENERIC MAP( + eqn_main => "(main_0 * main_1 * main_2 * !main_3)") + PORT MAP( + q => \Timer_1:TimerUDB:trig_disable\, + clock_0 => ClockBlock_BUS_CLK, + clk_en => ClockBlock_1k__SYNC_OUT, + main_0 => \Timer_1:TimerUDB:timer_enable\, + main_1 => \Timer_1:TimerUDB:run_mode\, + main_2 => \Timer_1:TimerUDB:per_zero\, + main_3 => \Timer_1:TimerUDB:trig_disable\); + \UART_1:BUART:counter_load_not\:macrocell GENERIC MAP( eqn_main => "(!main_0 * !main_1 * !main_2) + (!main_0 * !main_1 * main_3)") diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_t.lib b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_t.lib index 7621965..7df65f1 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_t.lib +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_t.lib @@ -247,7 +247,7 @@ library (timing) { } pin (q) { direction : output; - function : "((!main_0 * !main_1 * !main_2)) ^ 1"; + function : "((!main_0 * !main_1 * !main_2 * !main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -257,7 +257,7 @@ library (timing) { } pin (q_fixed) { direction : output; - function : "((!main_0 * !main_1 * !main_2)) ^ 1"; + function : "((!main_0 * !main_1 * !main_2 * !main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -335,7 +335,7 @@ library (timing) { } pin (q) { direction : output; - function : "((!main_0 * !main_1 * main_2)) ^ 1"; + function : "((!main_0 * !main_1 * !main_2 * main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -345,7 +345,7 @@ library (timing) { } pin (q_fixed) { direction : output; - function : "((!main_0 * !main_1 * main_2)) ^ 1"; + function : "((!main_0 * !main_1 * !main_2 * main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -423,7 +423,7 @@ library (timing) { } pin (q) { direction : output; - function : "((!main_0 * main_1 * main_2)) ^ 1"; + function : "((!main_0 * !main_1 * main_2 * main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -433,7 +433,7 @@ library (timing) { } pin (q_fixed) { direction : output; - function : "((!main_0 * main_1 * main_2)) ^ 1"; + function : "((!main_0 * !main_1 * main_2 * main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -511,7 +511,7 @@ library (timing) { } pin (q) { direction : output; - function : "((!main_0 * main_1 * !main_2)) ^ 1"; + function : "((!main_0 * !main_1 * main_2 * !main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -521,7 +521,7 @@ library (timing) { } pin (q_fixed) { direction : output; - function : "((!main_0 * main_1 * !main_2)) ^ 1"; + function : "((!main_0 * !main_1 * main_2 * !main_3)) ^ 1"; timing () { timing_type : combinational; related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; @@ -726,6 +726,94 @@ library (timing) { } } } + cell (macrocell9) { + pin (cin) { + direction : input; + } + bundle (cpt0) { + members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); + direction : input; + } + bundle (cpt1) { + members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); + direction : input; + } + bundle (main) { + members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); + direction : input; + } + bundle (clock) { + members (clock_0); + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (ar) { + members (ar_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + bundle (ap) { + members (ap_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + pin (cout) { + direction : output; + } + pin (q) { + direction : output; + function : "((!main_0 * main_1 * !main_2 * !main_3)) ^ 1"; + timing () { + timing_type : combinational; + related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; + intrinsic_rise : 3.350; + intrinsic_fall : 3.350; + } + } + pin (q_fixed) { + direction : output; + function : "((!main_0 * main_1 * !main_2 * !main_3)) ^ 1"; + timing () { + timing_type : combinational; + related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; + intrinsic_rise : 3.350; + intrinsic_fall : 3.350; + } + } + } cell (iocell1) { pin (in_clock) { direction : input; @@ -999,6 +1087,74 @@ library (timing) { } } cell (iocell5) { + pin (in_clock) { + direction : input; + clock : true; + } + pin (in_clock_en) { + direction : input; + } + pin (in_reset) { + direction : input; + } + pin (out_clock) { + direction : input; + clock : true; + } + pin (out_clock_en) { + direction : input; + } + pin (out_reset) { + direction : input; + } + pin (pin_input) { + direction : input; + } + pin (pa_out) { + direction : output; + } + pin (oe) { + direction : input; + } + pin (pad_in) { + direction : input; + } + pin (pad_out) { + direction : output; + timing () { + timing_sense : negative_unate; + timing_type : three_state_disable; + related_pin : "oe"; + intrinsic_rise : 16.870; + intrinsic_fall : 16.870; + } + timing () { + timing_sense : positive_unate; + timing_type : three_state_enable; + related_pin : "oe"; + intrinsic_rise : 16.870; + intrinsic_fall : 16.870; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "pin_input"; + intrinsic_rise : 16.839; + intrinsic_fall : 16.839; + } + } + pin (fb) { + direction : output; + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "pad_in"; + intrinsic_rise : 16.918; + intrinsic_fall : 16.918; + } + } + } + cell (iocell6) { pin (in_clock) { direction : input; clock : true; @@ -1066,7 +1222,7 @@ library (timing) { } } } - cell (iocell6) { + cell (iocell7) { pin (in_clock) { direction : input; clock : true; @@ -1134,7 +1290,7 @@ library (timing) { } } } - cell (iocell7) { + cell (iocell8) { pin (in_clock) { direction : input; clock : true; @@ -1202,7 +1358,7 @@ library (timing) { } } } - cell (iocell8) { + cell (iocell9) { pin (in_clock) { direction : input; clock : true; @@ -1270,7 +1426,7 @@ library (timing) { } } } - cell (iocell9) { + cell (iocell10) { pin (in_clock) { direction : input; clock : true; @@ -1338,7 +1494,7 @@ library (timing) { } } } - cell (iocell10) { + cell (iocell11) { pin (in_clock) { direction : input; clock : true; @@ -1406,7 +1562,7 @@ library (timing) { } } } - cell (iocell11) { + cell (iocell12) { pin (in_clock) { direction : input; clock : true; @@ -1474,7 +1630,7 @@ library (timing) { } } } - cell (iocell12) { + cell (iocell13) { pin (in_clock) { direction : input; clock : true; @@ -1694,7 +1850,7 @@ library (timing) { direction : output; } } - cell (macrocell9) { + cell (macrocell10) { pin (cin) { direction : input; } @@ -1792,7 +1948,7 @@ library (timing) { } } } - cell (macrocell10) { + cell (macrocell11) { pin (cin) { direction : input; } @@ -1880,7 +2036,7 @@ library (timing) { } } } - cell (macrocell11) { + cell (macrocell12) { pin (cin) { direction : input; } @@ -1978,7 +2134,7 @@ library (timing) { } } } - cell (macrocell12) { + cell (macrocell13) { pin (cin) { direction : input; } @@ -2076,7 +2232,7 @@ library (timing) { } } } - cell (macrocell13) { + cell (macrocell14) { pin (cin) { direction : input; } @@ -2174,7 +2330,7 @@ library (timing) { } } } - cell (macrocell14) { + cell (macrocell15) { pin (cin) { direction : input; } @@ -2272,7 +2428,7 @@ library (timing) { } } } - cell (macrocell15) { + cell (macrocell16) { pin (cin) { direction : input; } @@ -2370,7 +2526,7 @@ library (timing) { } } } - cell (macrocell16) { + cell (macrocell17) { pin (cin) { direction : input; } @@ -2468,7 +2624,7 @@ library (timing) { } } } - cell (macrocell17) { + cell (macrocell18) { pin (cin) { direction : input; } @@ -2566,7 +2722,7 @@ library (timing) { } } } - cell (macrocell18) { + cell (macrocell19) { pin (cin) { direction : input; } @@ -3159,7 +3315,7 @@ library (timing) { direction : output; } } - cell (macrocell19) { + cell (macrocell20) { pin (cin) { direction : input; } @@ -3257,7 +3413,7 @@ library (timing) { } } } - cell (macrocell20) { + cell (macrocell21) { pin (cin) { direction : input; } @@ -3355,7 +3511,7 @@ library (timing) { } } } - cell (macrocell21) { + cell (macrocell22) { pin (cin) { direction : input; } @@ -3453,7 +3609,7 @@ library (timing) { } } } - cell (macrocell22) { + cell (macrocell23) { pin (cin) { direction : input; } @@ -3541,7 +3697,7 @@ library (timing) { } } } - cell (macrocell23) { + cell (macrocell24) { pin (cin) { direction : input; } @@ -3787,24 +3943,8 @@ library (timing) { } } } - cell (macrocell24) { - pin (cin) { - direction : input; - } - bundle (cpt0) { - members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); - direction : input; - } - bundle (cpt1) { - members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); - direction : input; - } - bundle (main) { - members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); - direction : input; - } - bundle (clock) { - members (clock_0); + cell (statusicell3) { + pin (clock) { direction : input; clock : true; } @@ -3812,59 +3952,1778 @@ library (timing) { direction : input; timing () { timing_type : setup_rising; - related_pin : "clock_0"; + related_pin : "clock"; intrinsic_rise : 2.100; intrinsic_fall : 2.100; } timing () { timing_type : hold_rising; - related_pin : "clock_0"; + related_pin : "clock"; intrinsic_rise : 0.000; intrinsic_fall : 0.000; } } - bundle (ar) { - members (ar_0); + pin (reset) { direction : input; timing () { timing_type : recovery_rising; - related_pin : "clock_0"; + related_pin : "clock"; intrinsic_fall : 0.000; } timing () { timing_type : removal_rising; - related_pin : "clock_0"; + related_pin : "clock"; intrinsic_fall : 0.000; } } - bundle (ap) { - members (ap_0); + pin (status_0) { direction : input; timing () { - timing_type : recovery_rising; - related_pin : "clock_0"; - intrinsic_fall : 0.000; + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 1.570; + intrinsic_fall : 1.570; } timing () { - timing_type : removal_rising; - related_pin : "clock_0"; - intrinsic_fall : 0.000; + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 2.000; + intrinsic_fall : 2.000; } } - pin (cout) { - direction : output; - } - pin (q) { - direction : output; - function : "((!main_0 * !main_1 * !main_2) + (!main_0 * !main_1 * main_3)) ^ 1"; + pin (status_1) { + direction : input; timing () { - timing_type : combinational; - related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; - intrinsic_rise : 3.350; - intrinsic_fall : 3.350; + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 1.570; + intrinsic_fall : 1.570; } - } - pin (q_fixed) { + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 2.000; + intrinsic_fall : 2.000; + } + } + pin (status_2) { + direction : input; + } + pin (status_3) { + direction : input; + } + pin (status_4) { + direction : input; + } + pin (status_5) { + direction : input; + } + pin (status_6) { + direction : input; + } + pin (interrupt) { + direction : output; + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_2"; + intrinsic_rise : 2.460; + intrinsic_fall : 2.460; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_2"; + intrinsic_rise : 3.910; + intrinsic_fall : 3.910; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_3"; + intrinsic_rise : 2.460; + intrinsic_fall : 2.460; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_3"; + intrinsic_rise : 3.910; + intrinsic_fall : 3.910; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_4"; + intrinsic_rise : 2.460; + intrinsic_fall : 2.460; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_4"; + intrinsic_rise : 3.910; + intrinsic_fall : 3.910; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_5"; + intrinsic_rise : 2.460; + intrinsic_fall : 2.460; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_5"; + intrinsic_rise : 3.910; + intrinsic_fall : 3.910; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_6"; + intrinsic_rise : 2.460; + intrinsic_fall : 2.460; + } + timing () { + timing_sense : positive_unate; + timing_type : combinational; + related_pin : "status_6"; + intrinsic_rise : 3.910; + intrinsic_fall : 3.910; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 4.030; + intrinsic_fall : 4.030; + } + timing () { + timing_sense : negative_unate; + timing_type : clear; + related_pin : "reset"; + intrinsic_rise : 8.260; + intrinsic_fall : 8.260; + } + } + } + cell (macrocell25) { + pin (cin) { + direction : input; + } + bundle (cpt0) { + members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); + direction : input; + } + bundle (cpt1) { + members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); + direction : input; + } + bundle (main) { + members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 3.510; + intrinsic_fall : 3.510; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (clock) { + members (clock_0); + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (ar) { + members (ar_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + bundle (ap) { + members (ap_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + pin (cout) { + direction : output; + } + pin (q) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock_0"; + intrinsic_rise : 1.250; + intrinsic_fall : 1.250; + } + } + pin (q_fixed) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock_0"; + intrinsic_rise : 1.250; + intrinsic_fall : 1.250; + } + } + } + cell (controlcell2) { + pin (clock) { + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + pin (reset) { + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock"; + intrinsic_fall : 0.000; + } + } + pin (busclk) { + direction : input; + clock : true; + } + pin (control_0) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_1) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_2) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_3) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_4) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_5) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_6) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + pin (control_7) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.040; + intrinsic_fall : 2.040; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 2.580; + intrinsic_fall : 2.580; + } + } + } + cell (datapathcell2) { + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 2.10; + intrinsic_fall : 2.10; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (reset) { + direction : input; + } + pin (cs_addr_0) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 11.52; + intrinsic_fall : 11.52; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 5.31; + intrinsic_fall : 5.31; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 10.97; + intrinsic_fall : 10.97; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (cs_addr_1) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 11.52; + intrinsic_fall : 11.52; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 5.31; + intrinsic_fall : 5.31; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 10.97; + intrinsic_fall : 10.97; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (cs_addr_2) { + direction : input; + } + pin (route_si) { + direction : input; + } + pin (route_ci) { + direction : input; + } + pin (f0_load) { + direction : input; + } + pin (f1_load) { + direction : input; + } + pin (d0_load) { + direction : input; + } + pin (d1_load) { + direction : input; + } + pin (p_in_0) { + direction : input; + } + pin (p_in_1) { + direction : input; + } + pin (p_in_2) { + direction : input; + } + pin (p_in_3) { + direction : input; + } + pin (p_in_4) { + direction : input; + } + pin (p_in_5) { + direction : input; + } + pin (p_in_6) { + direction : input; + } + pin (p_in_7) { + direction : input; + } + pin (ce0i) { + direction : input; + } + pin (cl0i) { + direction : input; + } + pin (z0i) { + direction : input; + } + pin (ff0i) { + direction : input; + } + pin (ce1i) { + direction : input; + } + pin (cl1i) { + direction : input; + } + pin (z1i) { + direction : input; + } + pin (ff1i) { + direction : input; + } + pin (cap0i) { + direction : input; + } + pin (cap1i) { + direction : input; + } + pin (ci) { + direction : input; + } + pin (sir) { + direction : input; + } + pin (cfbi) { + direction : input; + } + pin (sil) { + direction : input; + } + pin (cmsbi) { + direction : input; + } + pin (busclk) { + direction : input; + clock : true; + } + pin (clock) { + direction : input; + clock : true; + } + pin (ce0_reg) { + direction : output; + } + pin (cl0_reg) { + direction : output; + } + pin (z0_reg) { + direction : output; + } + pin (f0_reg) { + direction : output; + } + pin (ce1_reg) { + direction : output; + } + pin (cl1_reg) { + direction : output; + } + pin (z1_reg) { + direction : output; + } + pin (f1_reg) { + direction : output; + } + pin (ov_msb_reg) { + direction : output; + } + pin (co_msb_reg) { + direction : output; + } + pin (cmsb_reg) { + direction : output; + } + pin (so_reg) { + direction : output; + } + pin (f0_bus_stat_reg) { + direction : output; + } + pin (f0_blk_stat_reg) { + direction : output; + } + pin (f1_bus_stat_reg) { + direction : output; + } + pin (f1_blk_stat_reg) { + direction : output; + } + pin (ce0_comb) { + direction : output; + } + pin (cl0_comb) { + direction : output; + } + pin (z0_comb) { + direction : output; + } + pin (f0_comb) { + direction : output; + } + pin (ce1_comb) { + direction : output; + } + pin (cl1_comb) { + direction : output; + } + pin (z1_comb) { + direction : output; + } + pin (f1_comb) { + direction : output; + } + pin (ov_msb_comb) { + direction : output; + } + pin (co_msb_comb) { + direction : output; + } + pin (cmsb_comb) { + direction : output; + } + pin (so_comb) { + direction : output; + } + pin (f0_bus_stat_comb) { + direction : output; + } + pin (f0_blk_stat_comb) { + direction : output; + } + pin (f1_bus_stat_comb) { + direction : output; + } + pin (f1_blk_stat_comb) { + direction : output; + } + pin (p_out_0) { + direction : output; + } + pin (p_out_1) { + direction : output; + } + pin (p_out_2) { + direction : output; + } + pin (p_out_3) { + direction : output; + } + pin (p_out_4) { + direction : output; + } + pin (p_out_5) { + direction : output; + } + pin (p_out_6) { + direction : output; + } + pin (p_out_7) { + direction : output; + } + pin (ce0) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.54; + intrinsic_fall : 3.54; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.54; + intrinsic_fall : 3.54; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 1.90; + intrinsic_fall : 1.90; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 1.90; + intrinsic_fall : 1.90; + } + } + pin (cl0) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 4.14; + intrinsic_fall : 4.14; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 4.14; + intrinsic_fall : 4.14; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.14; + intrinsic_fall : 2.14; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.14; + intrinsic_fall : 2.14; + } + } + pin (z0) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.32; + intrinsic_fall : 2.32; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 1.74; + intrinsic_fall : 1.74; + } + } + pin (ff0) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.73; + intrinsic_fall : 2.73; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 1.32; + intrinsic_fall : 1.32; + } + } + pin (ce1) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.51; + intrinsic_fall : 3.51; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.51; + intrinsic_fall : 3.51; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.03; + intrinsic_fall : 2.03; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.03; + intrinsic_fall : 2.03; + } + } + pin (cl1) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 4.90; + intrinsic_fall : 4.90; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 4.90; + intrinsic_fall : 4.90; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.26; + intrinsic_fall : 2.26; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.26; + intrinsic_fall : 2.26; + } + } + pin (z1) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.29; + intrinsic_fall : 2.29; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 1.53; + intrinsic_fall : 1.53; + } + } + pin (ff1) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.17; + intrinsic_fall : 2.17; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 1.18; + intrinsic_fall : 1.18; + } + } + pin (cap0) { + direction : output; + } + pin (cap1) { + direction : output; + } + pin (co_msb) { + direction : output; + timing () { + timing_type : combinational; + related_pin : "cs_addr_0"; + intrinsic_rise : 9.71; + intrinsic_fall : 9.71; + } + timing () { + timing_type : combinational; + related_pin : "cs_addr_1"; + intrinsic_rise : 9.71; + intrinsic_fall : 9.71; + } + timing () { + timing_type : combinational; + related_pin : "cs_addr_0"; + intrinsic_rise : 9.71; + intrinsic_fall : 9.71; + } + timing () { + timing_type : combinational; + related_pin : "cs_addr_1"; + intrinsic_rise : 9.71; + intrinsic_fall : 9.71; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 7.21; + intrinsic_fall : 7.21; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.21; + intrinsic_fall : 3.21; + } + } + pin (sol_msb) { + direction : output; + } + pin (cfbo) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 4.84; + intrinsic_fall : 4.84; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.63; + intrinsic_fall : 3.63; + } + } + pin (sor) { + direction : output; + } + pin (cmsbo) { + direction : output; + } + } + cell (datapathcell3) { + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 2.10; + intrinsic_fall : 2.10; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (reset) { + direction : input; + } + pin (cs_addr_0) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 11.52; + intrinsic_fall : 11.52; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 5.31; + intrinsic_fall : 5.31; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 10.97; + intrinsic_fall : 10.97; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (cs_addr_1) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 11.52; + intrinsic_fall : 11.52; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 5.31; + intrinsic_fall : 5.31; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 10.97; + intrinsic_fall : 10.97; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (cs_addr_2) { + direction : input; + } + pin (route_si) { + direction : input; + } + pin (route_ci) { + direction : input; + } + pin (f0_load) { + direction : input; + } + pin (f1_load) { + direction : input; + } + pin (d0_load) { + direction : input; + } + pin (d1_load) { + direction : input; + } + pin (p_in_0) { + direction : input; + } + pin (p_in_1) { + direction : input; + } + pin (p_in_2) { + direction : input; + } + pin (p_in_3) { + direction : input; + } + pin (p_in_4) { + direction : input; + } + pin (p_in_5) { + direction : input; + } + pin (p_in_6) { + direction : input; + } + pin (p_in_7) { + direction : input; + } + pin (ce0i) { + direction : input; + } + pin (cl0i) { + direction : input; + } + pin (z0i) { + direction : input; + } + pin (ff0i) { + direction : input; + } + pin (ce1i) { + direction : input; + } + pin (cl1i) { + direction : input; + } + pin (z1i) { + direction : input; + } + pin (ff1i) { + direction : input; + } + pin (cap0i) { + direction : input; + } + pin (cap1i) { + direction : input; + } + pin (ci) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 5.09; + intrinsic_fall : 5.09; + } + timing () { + timing_type : setup_rising; + related_pin : "clock"; + intrinsic_rise : 4.57; + intrinsic_fall : 4.57; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + timing () { + timing_type : hold_rising; + related_pin : "clock"; + intrinsic_rise : 0.00; + intrinsic_fall : 0.00; + } + } + pin (sir) { + direction : input; + } + pin (cfbi) { + direction : input; + } + pin (sil) { + direction : input; + } + pin (cmsbi) { + direction : input; + } + pin (busclk) { + direction : input; + clock : true; + } + pin (clock) { + direction : input; + clock : true; + } + pin (ce0_reg) { + direction : output; + } + pin (cl0_reg) { + direction : output; + } + pin (z0_reg) { + direction : output; + } + pin (f0_reg) { + direction : output; + } + pin (ce1_reg) { + direction : output; + } + pin (cl1_reg) { + direction : output; + } + pin (z1_reg) { + direction : output; + } + pin (f1_reg) { + direction : output; + } + pin (ov_msb_reg) { + direction : output; + } + pin (co_msb_reg) { + direction : output; + } + pin (cmsb_reg) { + direction : output; + } + pin (so_reg) { + direction : output; + } + pin (f0_bus_stat_reg) { + direction : output; + } + pin (f0_blk_stat_reg) { + direction : output; + } + pin (f1_bus_stat_reg) { + direction : output; + } + pin (f1_blk_stat_reg) { + direction : output; + } + pin (ce0_comb) { + direction : output; + } + pin (cl0_comb) { + direction : output; + } + pin (z0_comb) { + direction : output; + timing () { + timing_type : combinational; + related_pin : "z0i"; + intrinsic_rise : 2.96; + intrinsic_fall : 2.96; + } + timing () { + timing_type : combinational; + related_pin : "z0i"; + intrinsic_rise : 2.74; + intrinsic_fall : 2.74; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.85; + intrinsic_fall : 3.85; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.27; + intrinsic_fall : 3.27; + } + } + pin (f0_comb) { + direction : output; + } + pin (ce1_comb) { + direction : output; + } + pin (cl1_comb) { + direction : output; + } + pin (z1_comb) { + direction : output; + } + pin (f1_comb) { + direction : output; + } + pin (ov_msb_comb) { + direction : output; + } + pin (co_msb_comb) { + direction : output; + } + pin (cmsb_comb) { + direction : output; + } + pin (so_comb) { + direction : output; + } + pin (f0_bus_stat_comb) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 7.21; + intrinsic_fall : 7.21; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 7.21; + intrinsic_fall : 7.21; + } + } + pin (f0_blk_stat_comb) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 7.34; + intrinsic_fall : 7.34; + } + timing () { + timing_type : rising_edge; + related_pin : "busclk"; + intrinsic_rise : 7.34; + intrinsic_fall : 7.34; + } + } + pin (f1_bus_stat_comb) { + direction : output; + } + pin (f1_blk_stat_comb) { + direction : output; + } + pin (p_out_0) { + direction : output; + } + pin (p_out_1) { + direction : output; + } + pin (p_out_2) { + direction : output; + } + pin (p_out_3) { + direction : output; + } + pin (p_out_4) { + direction : output; + } + pin (p_out_5) { + direction : output; + } + pin (p_out_6) { + direction : output; + } + pin (p_out_7) { + direction : output; + } + pin (ce0) { + direction : output; + } + pin (cl0) { + direction : output; + } + pin (z0) { + direction : output; + } + pin (ff0) { + direction : output; + } + pin (ce1) { + direction : output; + } + pin (cl1) { + direction : output; + } + pin (z1) { + direction : output; + } + pin (ff1) { + direction : output; + } + pin (cap0) { + direction : output; + } + pin (cap1) { + direction : output; + } + pin (co_msb) { + direction : output; + } + pin (sol_msb) { + direction : output; + } + pin (cfbo) { + direction : output; + } + pin (sor) { + direction : output; + } + pin (cmsbo) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 3.32; + intrinsic_fall : 3.32; + } + timing () { + timing_type : rising_edge; + related_pin : "clock"; + intrinsic_rise : 2.25; + intrinsic_fall : 2.25; + } + } + } + cell (macrocell26) { + pin (cin) { + direction : input; + } + bundle (cpt0) { + members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); + direction : input; + } + bundle (cpt1) { + members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); + direction : input; + } + bundle (main) { + members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); + direction : input; + } + bundle (clock) { + members (clock_0); + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (ar) { + members (ar_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + bundle (ap) { + members (ap_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + pin (cout) { + direction : output; + } + pin (q) { + direction : output; + function : "((main_0 * main_1)) ^ 0"; + timing () { + timing_type : combinational; + related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; + intrinsic_rise : 3.350; + intrinsic_fall : 3.350; + } + } + pin (q_fixed) { + direction : output; + function : "((main_0 * main_1)) ^ 0"; + timing () { + timing_type : combinational; + related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; + intrinsic_rise : 3.350; + intrinsic_fall : 3.350; + } + } + } + cell (macrocell27) { + pin (cin) { + direction : input; + } + bundle (cpt0) { + members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); + direction : input; + } + bundle (cpt1) { + members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); + direction : input; + } + bundle (main) { + members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 3.510; + intrinsic_fall : 3.510; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (clock) { + members (clock_0); + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (ar) { + members (ar_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + bundle (ap) { + members (ap_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + pin (cout) { + direction : output; + } + pin (q) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock_0"; + intrinsic_rise : 1.250; + intrinsic_fall : 1.250; + } + } + pin (q_fixed) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock_0"; + intrinsic_rise : 1.250; + intrinsic_fall : 1.250; + } + } + } + cell (macrocell28) { + pin (cin) { + direction : input; + } + bundle (cpt0) { + members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); + direction : input; + } + bundle (cpt1) { + members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); + direction : input; + } + bundle (main) { + members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 3.510; + intrinsic_fall : 3.510; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (clock) { + members (clock_0); + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (ar) { + members (ar_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + bundle (ap) { + members (ap_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + pin (cout) { + direction : output; + } + pin (q) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock_0"; + intrinsic_rise : 1.250; + intrinsic_fall : 1.250; + } + } + pin (q_fixed) { + direction : output; + timing () { + timing_type : rising_edge; + related_pin : "clock_0"; + intrinsic_rise : 1.250; + intrinsic_fall : 1.250; + } + } + } + cell (macrocell29) { + pin (cin) { + direction : input; + } + bundle (cpt0) { + members (cpt0_0, cpt0_1, cpt0_2, cpt0_3, cpt0_4, cpt0_5, cpt0_6, cpt0_7, cpt0_8, cpt0_9, cpt0_10, cpt0_11); + direction : input; + } + bundle (cpt1) { + members (cpt1_0, cpt1_1, cpt1_2, cpt1_3, cpt1_4, cpt1_5, cpt1_6, cpt1_7, cpt1_8, cpt1_9, cpt1_10, cpt1_11); + direction : input; + } + bundle (main) { + members (main_0, main_1, main_2, main_3, main_4, main_5, main_6, main_7, main_8, main_9, main_10, main_11); + direction : input; + } + bundle (clock) { + members (clock_0); + direction : input; + clock : true; + } + pin (clk_en) { + direction : input; + timing () { + timing_type : setup_rising; + related_pin : "clock_0"; + intrinsic_rise : 2.100; + intrinsic_fall : 2.100; + } + timing () { + timing_type : hold_rising; + related_pin : "clock_0"; + intrinsic_rise : 0.000; + intrinsic_fall : 0.000; + } + } + bundle (ar) { + members (ar_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + bundle (ap) { + members (ap_0); + direction : input; + timing () { + timing_type : recovery_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + timing () { + timing_type : removal_rising; + related_pin : "clock_0"; + intrinsic_fall : 0.000; + } + } + pin (cout) { + direction : output; + } + pin (q) { + direction : output; + function : "((!main_0 * !main_1 * !main_2) + (!main_0 * !main_1 * main_3)) ^ 1"; + timing () { + timing_type : combinational; + related_pin : "main_0 main_1 main_2 main_3 main_4 main_5 main_6 main_7 main_8 main_9 main_10 main_11"; + intrinsic_rise : 3.350; + intrinsic_fall : 3.350; + } + } + pin (q_fixed) { direction : output; function : "((!main_0 * !main_1 * !main_2) + (!main_0 * !main_1 * main_3)) ^ 1"; timing () { @@ -3875,7 +5734,7 @@ library (timing) { } } } - cell (datapathcell2) { + cell (datapathcell4) { pin (clk_en) { direction : input; } @@ -4260,7 +6119,7 @@ library (timing) { direction : output; } } - cell (statusicell3) { + cell (statusicell4) { pin (clock) { direction : input; clock : true; @@ -4427,7 +6286,7 @@ library (timing) { } } } - cell (datapathcell3) { + cell (datapathcell5) { pin (clk_en) { direction : input; } @@ -4752,7 +6611,7 @@ library (timing) { direction : output; } } - cell (macrocell25) { + cell (macrocell30) { pin (cin) { direction : input; } @@ -4850,7 +6709,7 @@ library (timing) { } } } - cell (macrocell26) { + cell (macrocell31) { pin (cin) { direction : input; } @@ -4938,7 +6797,7 @@ library (timing) { } } } - cell (macrocell27) { + cell (macrocell32) { pin (cin) { direction : input; } @@ -5036,7 +6895,7 @@ library (timing) { } } } - cell (macrocell28) { + cell (macrocell33) { pin (cin) { direction : input; } @@ -5134,7 +6993,7 @@ library (timing) { } } } - cell (macrocell29) { + cell (macrocell34) { pin (cin) { direction : input; } @@ -5232,7 +7091,7 @@ library (timing) { } } } - cell (macrocell30) { + cell (macrocell35) { pin (cin) { direction : input; } @@ -5320,7 +7179,7 @@ library (timing) { } } } - cell (macrocell31) { + cell (macrocell36) { pin (cin) { direction : input; } @@ -5408,7 +7267,7 @@ library (timing) { } } } - cell (macrocell32) { + cell (macrocell37) { pin (cin) { direction : input; } @@ -5506,7 +7365,7 @@ library (timing) { } } } - cell (iocell13) { + cell (iocell14) { pin (in_clock) { direction : input; clock : true; @@ -5574,7 +7433,7 @@ library (timing) { } } } - cell (iocell14) { + cell (iocell15) { pin (in_clock) { direction : input; clock : true; @@ -5642,7 +7501,7 @@ library (timing) { } } } - cell (iocell15) { + cell (iocell16) { pin (in_clock) { direction : input; clock : true; diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_t.vh2 b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_t.vh2 index 7d15c1a..e4a36b1 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_t.vh2 +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_t.vh2 @@ -1,5 +1,5 @@ --- Project: C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj --- Generated: 03/22/2013 10:33:30 +-- Project: C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj +-- Generated: 07/25/2013 16:49:01 -- ENTITY PSOC5_SPI_LSM303D IS @@ -8,6 +8,7 @@ ENTITY PSOC5_SPI_LSM303D IS Pin_2(0)_PAD : OUT std_ulogic; Pin_3(0)_PAD : OUT std_ulogic; Pin_4(0)_PAD : OUT std_ulogic; + Pin_5(0)_PAD : OUT std_ulogic; Tx_1(0)_PAD : OUT std_ulogic; \LCD:LCDPort(0)_PAD\ : OUT std_ulogic; \LCD:LCDPort(1)_PAD\ : OUT std_ulogic; @@ -31,6 +32,7 @@ END PSOC5_SPI_LSM303D; ARCHITECTURE __DEFAULT__ OF PSOC5_SPI_LSM303D IS SIGNAL ClockBlock_100k : bit; SIGNAL ClockBlock_1k : bit; + SIGNAL ClockBlock_1k__SYNC_OUT : bit; SIGNAL ClockBlock_32k : bit; SIGNAL ClockBlock_BUS_CLK : bit; ATTRIBUTE global_signal OF ClockBlock_BUS_CLK : SIGNAL IS true; @@ -46,25 +48,28 @@ ARCHITECTURE __DEFAULT__ OF PSOC5_SPI_LSM303D IS SIGNAL Net_191_local : bit; SIGNAL Net_20 : bit; SIGNAL Net_234 : bit; - ATTRIBUTE placement_force OF Net_234 : SIGNAL IS "U(3,4,A)1"; + ATTRIBUTE placement_force OF Net_234 : SIGNAL IS "U(3,4,A)2"; SIGNAL Net_30 : bit; - ATTRIBUTE placement_force OF Net_30 : SIGNAL IS "U(3,3,A)2"; + ATTRIBUTE placement_force OF Net_30 : SIGNAL IS "U(3,5,A)2"; SIGNAL Net_419 : bit; - ATTRIBUTE placement_force OF Net_419 : SIGNAL IS "U(3,3,A)3"; + ATTRIBUTE placement_force OF Net_419 : SIGNAL IS "U(3,5,A)3"; SIGNAL Net_422 : bit; - ATTRIBUTE placement_force OF Net_422 : SIGNAL IS "U(3,3,B)0"; + ATTRIBUTE placement_force OF Net_422 : SIGNAL IS "U(3,5,B)0"; SIGNAL Net_425 : bit; - ATTRIBUTE placement_force OF Net_425 : SIGNAL IS "U(3,3,B)1"; + ATTRIBUTE placement_force OF Net_425 : SIGNAL IS "U(3,5,B)1"; SIGNAL Net_428 : bit; - ATTRIBUTE placement_force OF Net_428 : SIGNAL IS "U(3,3,B)2"; + ATTRIBUTE placement_force OF Net_428 : SIGNAL IS "U(3,5,B)2"; SIGNAL Net_439 : bit; - ATTRIBUTE placement_force OF Net_439 : SIGNAL IS "U(3,3,A)0"; + ATTRIBUTE placement_force OF Net_439 : SIGNAL IS "U(3,5,A)1"; SIGNAL Net_479 : bit; - ATTRIBUTE placement_force OF Net_479 : SIGNAL IS "U(2,3,B)1"; + ATTRIBUTE placement_force OF Net_479 : SIGNAL IS "U(3,5,A)0"; + SIGNAL Net_585 : bit; + ATTRIBUTE placement_force OF Net_585 : SIGNAL IS "U(3,5,B)3"; SIGNAL Pin_1(0)__PA : bit; SIGNAL Pin_2(0)__PA : bit; SIGNAL Pin_3(0)__PA : bit; SIGNAL Pin_4(0)__PA : bit; + SIGNAL Pin_5(0)__PA : bit; SIGNAL Tx_1(0)__PA : bit; SIGNAL \\\LCD:LCDPort(0)\\__PA\ : bit; SIGNAL \\\LCD:LCDPort(1)\\__PA\ : bit; @@ -74,7 +79,7 @@ ARCHITECTURE __DEFAULT__ OF PSOC5_SPI_LSM303D IS SIGNAL \\\LCD:LCDPort(5)\\__PA\ : bit; SIGNAL \\\LCD:LCDPort(6)\\__PA\ : bit; SIGNAL \SPIM:BSPIM:cnt_enable\ : bit; - ATTRIBUTE placement_force OF \SPIM:BSPIM:cnt_enable\ : SIGNAL IS "U(2,3,A)0"; + ATTRIBUTE placement_force OF \SPIM:BSPIM:cnt_enable\ : SIGNAL IS "U(2,5,A)0"; SIGNAL \SPIM:BSPIM:cnt_tc\ : bit; SIGNAL \SPIM:BSPIM:count_0\ : bit; SIGNAL \SPIM:BSPIM:count_1\ : bit; @@ -84,30 +89,30 @@ ARCHITECTURE __DEFAULT__ OF PSOC5_SPI_LSM303D IS SIGNAL \SPIM:BSPIM:count_5\ : bit; SIGNAL \SPIM:BSPIM:count_6\ : bit; SIGNAL \SPIM:BSPIM:dpcounter_one\ : bit; - ATTRIBUTE placement_force OF \SPIM:BSPIM:dpcounter_one\ : SIGNAL IS "U(2,3,B)3"; + ATTRIBUTE placement_force OF \SPIM:BSPIM:dpcounter_one\ : SIGNAL IS "U(2,5,B)3"; SIGNAL \SPIM:BSPIM:is_spi_done\ : bit; ATTRIBUTE placement_force OF \SPIM:BSPIM:is_spi_done\ : SIGNAL IS "U(2,4,B)0"; SIGNAL \SPIM:BSPIM:ld_ident\ : bit; - ATTRIBUTE placement_force OF \SPIM:BSPIM:ld_ident\ : SIGNAL IS "U(3,3,A)1"; + ATTRIBUTE placement_force OF \SPIM:BSPIM:ld_ident\ : SIGNAL IS "U(2,5,B)1"; SIGNAL \SPIM:BSPIM:load_cond\ : bit; - ATTRIBUTE placement_force OF \SPIM:BSPIM:load_cond\ : SIGNAL IS "U(2,3,B)0"; + ATTRIBUTE placement_force OF \SPIM:BSPIM:load_cond\ : SIGNAL IS "U(2,5,B)0"; SIGNAL \SPIM:BSPIM:load_rx_data\ : bit; - ATTRIBUTE placement_force OF \SPIM:BSPIM:load_rx_data\ : SIGNAL IS "U(2,3,B)2"; + ATTRIBUTE placement_force OF \SPIM:BSPIM:load_rx_data\ : SIGNAL IS "U(2,5,B)2"; SIGNAL \SPIM:BSPIM:mosi_from_dp\ : bit; SIGNAL \SPIM:BSPIM:mosi_from_dp_reg\ : bit; ATTRIBUTE placement_force OF \SPIM:BSPIM:mosi_from_dp_reg\ : SIGNAL IS "U(3,4,A)0"; SIGNAL \SPIM:BSPIM:mosi_hs_reg\ : bit; - ATTRIBUTE placement_force OF \SPIM:BSPIM:mosi_hs_reg\ : SIGNAL IS "U(3,5,B)0"; + ATTRIBUTE placement_force OF \SPIM:BSPIM:mosi_hs_reg\ : SIGNAL IS "U(3,3,B)0"; SIGNAL \SPIM:BSPIM:mosi_pre_reg\ : bit; ATTRIBUTE placement_force OF \SPIM:BSPIM:mosi_pre_reg\ : SIGNAL IS "U(2,4,A)0"; SIGNAL \SPIM:BSPIM:rx_status_4\ : bit; SIGNAL \SPIM:BSPIM:rx_status_5\ : bit; SIGNAL \SPIM:BSPIM:rx_status_6\ : bit; - ATTRIBUTE placement_force OF \SPIM:BSPIM:rx_status_6\ : SIGNAL IS "U(2,5,A)0"; + ATTRIBUTE placement_force OF \SPIM:BSPIM:rx_status_6\ : SIGNAL IS "U(2,3,A)0"; SIGNAL \SPIM:BSPIM:state_0\ : bit; ATTRIBUTE placement_force OF \SPIM:BSPIM:state_0\ : SIGNAL IS "U(2,4,B)3"; SIGNAL \SPIM:BSPIM:state_1\ : bit; - ATTRIBUTE placement_force OF \SPIM:BSPIM:state_1\ : SIGNAL IS "U(2,3,A)1"; + ATTRIBUTE placement_force OF \SPIM:BSPIM:state_1\ : SIGNAL IS "U(2,5,A)1"; SIGNAL \SPIM:BSPIM:state_2\ : bit; ATTRIBUTE placement_force OF \SPIM:BSPIM:state_2\ : SIGNAL IS "U(2,4,B)1"; SIGNAL \SPIM:BSPIM:tx_status_0\ : bit; @@ -115,39 +120,57 @@ ARCHITECTURE __DEFAULT__ OF PSOC5_SPI_LSM303D IS SIGNAL \SPIM:BSPIM:tx_status_1\ : bit; SIGNAL \SPIM:BSPIM:tx_status_2\ : bit; SIGNAL \SPIM:BSPIM:tx_status_4\ : bit; - ATTRIBUTE placement_force OF \SPIM:BSPIM:tx_status_4\ : SIGNAL IS "U(2,3,A)2"; + ATTRIBUTE placement_force OF \SPIM:BSPIM:tx_status_4\ : SIGNAL IS "U(2,5,A)2"; SIGNAL \SPIM:Net_276\ : bit; ATTRIBUTE global_signal OF \SPIM:Net_276\ : SIGNAL IS true; SIGNAL \SPIM:Net_276_local\ : bit; - SIGNAL \SS:control_2\ : bit; SIGNAL \SS:control_3\ : bit; SIGNAL \SS:control_4\ : bit; SIGNAL \SS:control_5\ : bit; SIGNAL \SS:control_6\ : bit; SIGNAL \SS:control_7\ : bit; + SIGNAL \Timer_1:TimerUDB:control_0\ : bit; + SIGNAL \Timer_1:TimerUDB:control_1\ : bit; + SIGNAL \Timer_1:TimerUDB:control_2\ : bit; + SIGNAL \Timer_1:TimerUDB:control_3\ : bit; + SIGNAL \Timer_1:TimerUDB:control_4\ : bit; + SIGNAL \Timer_1:TimerUDB:control_5\ : bit; + SIGNAL \Timer_1:TimerUDB:control_6\ : bit; + SIGNAL \Timer_1:TimerUDB:control_7\ : bit; + SIGNAL \Timer_1:TimerUDB:per_zero\ : bit; + SIGNAL \Timer_1:TimerUDB:run_mode\ : bit; + ATTRIBUTE placement_force OF \Timer_1:TimerUDB:run_mode\ : SIGNAL IS "U(2,0,A)3"; + SIGNAL \Timer_1:TimerUDB:status_2\ : bit; + SIGNAL \Timer_1:TimerUDB:status_3\ : bit; + SIGNAL \Timer_1:TimerUDB:status_tc\ : bit; + ATTRIBUTE placement_force OF \Timer_1:TimerUDB:status_tc\ : SIGNAL IS "U(2,0,A)2"; + SIGNAL \Timer_1:TimerUDB:timer_enable\ : bit; + ATTRIBUTE placement_force OF \Timer_1:TimerUDB:timer_enable\ : SIGNAL IS "U(2,0,A)0"; + SIGNAL \Timer_1:TimerUDB:trig_disable\ : bit; + ATTRIBUTE placement_force OF \Timer_1:TimerUDB:trig_disable\ : SIGNAL IS "U(2,0,A)1"; SIGNAL \UART_1:BUART:counter_load_not\ : bit; - ATTRIBUTE placement_force OF \UART_1:BUART:counter_load_not\ : SIGNAL IS "U(3,5,B)1"; + ATTRIBUTE placement_force OF \UART_1:BUART:counter_load_not\ : SIGNAL IS "U(3,3,B)1"; SIGNAL \UART_1:BUART:tx_bitclk\ : bit; - ATTRIBUTE placement_force OF \UART_1:BUART:tx_bitclk\ : SIGNAL IS "U(2,5,B)0"; + ATTRIBUTE placement_force OF \UART_1:BUART:tx_bitclk\ : SIGNAL IS "U(2,3,B)0"; SIGNAL \UART_1:BUART:tx_bitclk_dp\ : bit; SIGNAL \UART_1:BUART:tx_bitclk_enable_pre\ : bit; - ATTRIBUTE placement_force OF \UART_1:BUART:tx_bitclk_enable_pre\ : SIGNAL IS "U(2,5,B)1"; + ATTRIBUTE placement_force OF \UART_1:BUART:tx_bitclk_enable_pre\ : SIGNAL IS "U(2,3,B)1"; SIGNAL \UART_1:BUART:tx_counter_dp\ : bit; SIGNAL \UART_1:BUART:tx_fifo_empty\ : bit; SIGNAL \UART_1:BUART:tx_fifo_notfull\ : bit; SIGNAL \UART_1:BUART:tx_shift_out\ : bit; SIGNAL \UART_1:BUART:tx_state_0\ : bit; - ATTRIBUTE placement_force OF \UART_1:BUART:tx_state_0\ : SIGNAL IS "U(2,5,A)1"; + ATTRIBUTE placement_force OF \UART_1:BUART:tx_state_0\ : SIGNAL IS "U(2,3,A)1"; SIGNAL \UART_1:BUART:tx_state_1\ : bit; - ATTRIBUTE placement_force OF \UART_1:BUART:tx_state_1\ : SIGNAL IS "U(2,5,A)2"; + ATTRIBUTE placement_force OF \UART_1:BUART:tx_state_1\ : SIGNAL IS "U(3,0,B)0"; SIGNAL \UART_1:BUART:tx_state_2\ : bit; - ATTRIBUTE placement_force OF \UART_1:BUART:tx_state_2\ : SIGNAL IS "U(3,5,A)1"; + ATTRIBUTE placement_force OF \UART_1:BUART:tx_state_2\ : SIGNAL IS "U(3,3,A)1"; SIGNAL \UART_1:BUART:tx_status_0\ : bit; - ATTRIBUTE placement_force OF \UART_1:BUART:tx_status_0\ : SIGNAL IS "U(2,5,A)3"; + ATTRIBUTE placement_force OF \UART_1:BUART:tx_status_0\ : SIGNAL IS "U(2,3,A)3"; SIGNAL \UART_1:BUART:tx_status_2\ : bit; - ATTRIBUTE placement_force OF \UART_1:BUART:tx_status_2\ : SIGNAL IS "U(3,4,A)2"; + ATTRIBUTE placement_force OF \UART_1:BUART:tx_status_2\ : SIGNAL IS "U(2,3,B)3"; SIGNAL \UART_1:BUART:txn\ : bit; - ATTRIBUTE placement_force OF \UART_1:BUART:txn\ : SIGNAL IS "U(3,5,A)0"; + ATTRIBUTE placement_force OF \UART_1:BUART:txn\ : SIGNAL IS "U(3,3,A)0"; SIGNAL __ONE__ : bit; ATTRIBUTE POWER OF __ONE__ : SIGNAL IS true; SIGNAL __ZERO__ : bit; @@ -157,27 +180,44 @@ ARCHITECTURE __DEFAULT__ OF PSOC5_SPI_LSM303D IS SIGNAL m_sclk_pin(0)__PA : bit; SIGNAL mywire_1_0 : bit; SIGNAL mywire_1_1 : bit; + SIGNAL mywire_1_2 : bit; SIGNAL tmpOE__m_miso_pin_net_0 : bit; ATTRIBUTE POWER OF tmpOE__m_miso_pin_net_0 : SIGNAL IS true; SIGNAL zero : bit; ATTRIBUTE GROUND OF zero : SIGNAL IS true; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.ce0__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.cl0__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.z0__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.ff0__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.ce1__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.cl1__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.z1__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.ff1__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.co_msb__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.sol_msb__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u0.cfbo__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u1.sor__sig\ : bit; + SIGNAL \Timer_1:TimerUDB:sT16:timerdp:u1.cmsbo__sig\ : bit; ATTRIBUTE Location OF ClockBlock : LABEL IS "F(Clock,0)"; + ATTRIBUTE Location OF ClockBlock_1k__SYNC : LABEL IS "U(3,0)"; ATTRIBUTE lib_model OF Net_234 : LABEL IS "macrocell1"; ATTRIBUTE Location OF Net_234 : LABEL IS "U(3,4)"; ATTRIBUTE lib_model OF Net_30 : LABEL IS "macrocell2"; - ATTRIBUTE Location OF Net_30 : LABEL IS "U(3,3)"; + ATTRIBUTE Location OF Net_30 : LABEL IS "U(3,5)"; ATTRIBUTE lib_model OF Net_419 : LABEL IS "macrocell3"; - ATTRIBUTE Location OF Net_419 : LABEL IS "U(3,3)"; + ATTRIBUTE Location OF Net_419 : LABEL IS "U(3,5)"; ATTRIBUTE lib_model OF Net_422 : LABEL IS "macrocell4"; - ATTRIBUTE Location OF Net_422 : LABEL IS "U(3,3)"; + ATTRIBUTE Location OF Net_422 : LABEL IS "U(3,5)"; ATTRIBUTE lib_model OF Net_425 : LABEL IS "macrocell5"; - ATTRIBUTE Location OF Net_425 : LABEL IS "U(3,3)"; + ATTRIBUTE Location OF Net_425 : LABEL IS "U(3,5)"; ATTRIBUTE lib_model OF Net_428 : LABEL IS "macrocell6"; - ATTRIBUTE Location OF Net_428 : LABEL IS "U(3,3)"; + ATTRIBUTE Location OF Net_428 : LABEL IS "U(3,5)"; ATTRIBUTE lib_model OF Net_439 : LABEL IS "macrocell7"; - ATTRIBUTE Location OF Net_439 : LABEL IS "U(3,3)"; + ATTRIBUTE Location OF Net_439 : LABEL IS "U(3,5)"; ATTRIBUTE lib_model OF Net_479 : LABEL IS "macrocell8"; - ATTRIBUTE Location OF Net_479 : LABEL IS "U(2,3)"; + ATTRIBUTE Location OF Net_479 : LABEL IS "U(3,5)"; + ATTRIBUTE lib_model OF Net_585 : LABEL IS "macrocell9"; + ATTRIBUTE Location OF Net_585 : LABEL IS "U(3,5)"; ATTRIBUTE lib_model OF Pin_1(0) : LABEL IS "iocell1"; ATTRIBUTE Location OF Pin_1(0) : LABEL IS "P3[0]"; ATTRIBUTE lib_model OF Pin_2(0) : LABEL IS "iocell2"; @@ -186,90 +226,108 @@ ARCHITECTURE __DEFAULT__ OF PSOC5_SPI_LSM303D IS ATTRIBUTE Location OF Pin_3(0) : LABEL IS "P3[2]"; ATTRIBUTE lib_model OF Pin_4(0) : LABEL IS "iocell4"; ATTRIBUTE Location OF Pin_4(0) : LABEL IS "P3[3]"; - ATTRIBUTE lib_model OF Tx_1(0) : LABEL IS "iocell5"; + ATTRIBUTE lib_model OF Pin_5(0) : LABEL IS "iocell5"; + ATTRIBUTE Location OF Pin_5(0) : LABEL IS "P3[4]"; + ATTRIBUTE lib_model OF Tx_1(0) : LABEL IS "iocell6"; ATTRIBUTE Location OF Tx_1(0) : LABEL IS "P3[7]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(0)\ : LABEL IS "iocell6"; + ATTRIBUTE lib_model OF \LCD:LCDPort(0)\ : LABEL IS "iocell7"; ATTRIBUTE Location OF \LCD:LCDPort(0)\ : LABEL IS "P2[0]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(1)\ : LABEL IS "iocell7"; + ATTRIBUTE lib_model OF \LCD:LCDPort(1)\ : LABEL IS "iocell8"; ATTRIBUTE Location OF \LCD:LCDPort(1)\ : LABEL IS "P2[1]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(2)\ : LABEL IS "iocell8"; + ATTRIBUTE lib_model OF \LCD:LCDPort(2)\ : LABEL IS "iocell9"; ATTRIBUTE Location OF \LCD:LCDPort(2)\ : LABEL IS "P2[2]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(3)\ : LABEL IS "iocell9"; + ATTRIBUTE lib_model OF \LCD:LCDPort(3)\ : LABEL IS "iocell10"; ATTRIBUTE Location OF \LCD:LCDPort(3)\ : LABEL IS "P2[3]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(4)\ : LABEL IS "iocell10"; + ATTRIBUTE lib_model OF \LCD:LCDPort(4)\ : LABEL IS "iocell11"; ATTRIBUTE Location OF \LCD:LCDPort(4)\ : LABEL IS "P2[4]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(5)\ : LABEL IS "iocell11"; + ATTRIBUTE lib_model OF \LCD:LCDPort(5)\ : LABEL IS "iocell12"; ATTRIBUTE Location OF \LCD:LCDPort(5)\ : LABEL IS "P2[5]"; - ATTRIBUTE lib_model OF \LCD:LCDPort(6)\ : LABEL IS "iocell12"; + ATTRIBUTE lib_model OF \LCD:LCDPort(6)\ : LABEL IS "iocell13"; ATTRIBUTE Location OF \LCD:LCDPort(6)\ : LABEL IS "P2[6]"; ATTRIBUTE Location OF \SPIM:BSPIM:BitCounter\ : LABEL IS "U(2,4)"; ATTRIBUTE lib_model OF \SPIM:BSPIM:RxStsReg\ : LABEL IS "statusicell1"; - ATTRIBUTE Location OF \SPIM:BSPIM:RxStsReg\ : LABEL IS "U(2,5)"; + ATTRIBUTE Location OF \SPIM:BSPIM:RxStsReg\ : LABEL IS "U(3,4)"; ATTRIBUTE lib_model OF \SPIM:BSPIM:TxStsReg\ : LABEL IS "statusicell2"; - ATTRIBUTE Location OF \SPIM:BSPIM:TxStsReg\ : LABEL IS "U(2,3)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:cnt_enable\ : LABEL IS "macrocell9"; - ATTRIBUTE Location OF \SPIM:BSPIM:cnt_enable\ : LABEL IS "U(2,3)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:dpcounter_one\ : LABEL IS "macrocell10"; - ATTRIBUTE Location OF \SPIM:BSPIM:dpcounter_one\ : LABEL IS "U(2,3)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:is_spi_done\ : LABEL IS "macrocell11"; + ATTRIBUTE Location OF \SPIM:BSPIM:TxStsReg\ : LABEL IS "U(2,5)"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:cnt_enable\ : LABEL IS "macrocell10"; + ATTRIBUTE Location OF \SPIM:BSPIM:cnt_enable\ : LABEL IS "U(2,5)"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:dpcounter_one\ : LABEL IS "macrocell11"; + ATTRIBUTE Location OF \SPIM:BSPIM:dpcounter_one\ : LABEL IS "U(2,5)"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:is_spi_done\ : LABEL IS "macrocell12"; ATTRIBUTE Location OF \SPIM:BSPIM:is_spi_done\ : LABEL IS "U(2,4)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:ld_ident\ : LABEL IS "macrocell12"; - ATTRIBUTE Location OF \SPIM:BSPIM:ld_ident\ : LABEL IS "U(3,3)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:load_cond\ : LABEL IS "macrocell13"; - ATTRIBUTE Location OF \SPIM:BSPIM:load_cond\ : LABEL IS "U(2,3)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:load_rx_data\ : LABEL IS "macrocell14"; - ATTRIBUTE Location OF \SPIM:BSPIM:load_rx_data\ : LABEL IS "U(2,3)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:mosi_from_dp_reg\ : LABEL IS "macrocell15"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:ld_ident\ : LABEL IS "macrocell13"; + ATTRIBUTE Location OF \SPIM:BSPIM:ld_ident\ : LABEL IS "U(2,5)"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:load_cond\ : LABEL IS "macrocell14"; + ATTRIBUTE Location OF \SPIM:BSPIM:load_cond\ : LABEL IS "U(2,5)"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:load_rx_data\ : LABEL IS "macrocell15"; + ATTRIBUTE Location OF \SPIM:BSPIM:load_rx_data\ : LABEL IS "U(2,5)"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:mosi_from_dp_reg\ : LABEL IS "macrocell16"; ATTRIBUTE Location OF \SPIM:BSPIM:mosi_from_dp_reg\ : LABEL IS "U(3,4)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:mosi_hs_reg\ : LABEL IS "macrocell16"; - ATTRIBUTE Location OF \SPIM:BSPIM:mosi_hs_reg\ : LABEL IS "U(3,5)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:mosi_pre_reg\ : LABEL IS "macrocell17"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:mosi_hs_reg\ : LABEL IS "macrocell17"; + ATTRIBUTE Location OF \SPIM:BSPIM:mosi_hs_reg\ : LABEL IS "U(3,3)"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:mosi_pre_reg\ : LABEL IS "macrocell18"; ATTRIBUTE Location OF \SPIM:BSPIM:mosi_pre_reg\ : LABEL IS "U(2,4)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:rx_status_6\ : LABEL IS "macrocell18"; - ATTRIBUTE Location OF \SPIM:BSPIM:rx_status_6\ : LABEL IS "U(2,5)"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:rx_status_6\ : LABEL IS "macrocell19"; + ATTRIBUTE Location OF \SPIM:BSPIM:rx_status_6\ : LABEL IS "U(2,3)"; ATTRIBUTE lib_model OF \SPIM:BSPIM:sR8:Dp:u0\ : LABEL IS "datapathcell1"; ATTRIBUTE Location OF \SPIM:BSPIM:sR8:Dp:u0\ : LABEL IS "U(2,4)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:state_0\ : LABEL IS "macrocell19"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:state_0\ : LABEL IS "macrocell20"; ATTRIBUTE Location OF \SPIM:BSPIM:state_0\ : LABEL IS "U(2,4)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:state_1\ : LABEL IS "macrocell20"; - ATTRIBUTE Location OF \SPIM:BSPIM:state_1\ : LABEL IS "U(2,3)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:state_2\ : LABEL IS "macrocell21"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:state_1\ : LABEL IS "macrocell21"; + ATTRIBUTE Location OF \SPIM:BSPIM:state_1\ : LABEL IS "U(2,5)"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:state_2\ : LABEL IS "macrocell22"; ATTRIBUTE Location OF \SPIM:BSPIM:state_2\ : LABEL IS "U(2,4)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:tx_status_0\ : LABEL IS "macrocell22"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:tx_status_0\ : LABEL IS "macrocell23"; ATTRIBUTE Location OF \SPIM:BSPIM:tx_status_0\ : LABEL IS "U(2,4)"; - ATTRIBUTE lib_model OF \SPIM:BSPIM:tx_status_4\ : LABEL IS "macrocell23"; - ATTRIBUTE Location OF \SPIM:BSPIM:tx_status_4\ : LABEL IS "U(2,3)"; + ATTRIBUTE lib_model OF \SPIM:BSPIM:tx_status_4\ : LABEL IS "macrocell24"; + ATTRIBUTE Location OF \SPIM:BSPIM:tx_status_4\ : LABEL IS "U(2,5)"; ATTRIBUTE lib_model OF \SS:Async:ctrl_reg\ : LABEL IS "controlcell1"; - ATTRIBUTE Location OF \SS:Async:ctrl_reg\ : LABEL IS "U(3,3)"; - ATTRIBUTE lib_model OF \UART_1:BUART:counter_load_not\ : LABEL IS "macrocell24"; - ATTRIBUTE Location OF \UART_1:BUART:counter_load_not\ : LABEL IS "U(3,5)"; - ATTRIBUTE lib_model OF \UART_1:BUART:sTX:TxShifter:u0\ : LABEL IS "datapathcell2"; - ATTRIBUTE Location OF \UART_1:BUART:sTX:TxShifter:u0\ : LABEL IS "U(3,5)"; - ATTRIBUTE lib_model OF \UART_1:BUART:sTX:TxSts\ : LABEL IS "statusicell3"; - ATTRIBUTE Location OF \UART_1:BUART:sTX:TxSts\ : LABEL IS "U(3,4)"; - ATTRIBUTE lib_model OF \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\ : LABEL IS "datapathcell3"; - ATTRIBUTE Location OF \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\ : LABEL IS "U(2,5)"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_bitclk\ : LABEL IS "macrocell25"; - ATTRIBUTE Location OF \UART_1:BUART:tx_bitclk\ : LABEL IS "U(2,5)"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_bitclk_enable_pre\ : LABEL IS "macrocell26"; - ATTRIBUTE Location OF \UART_1:BUART:tx_bitclk_enable_pre\ : LABEL IS "U(2,5)"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_state_0\ : LABEL IS "macrocell27"; - ATTRIBUTE Location OF \UART_1:BUART:tx_state_0\ : LABEL IS "U(2,5)"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_state_1\ : LABEL IS "macrocell28"; - ATTRIBUTE Location OF \UART_1:BUART:tx_state_1\ : LABEL IS "U(2,5)"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_state_2\ : LABEL IS "macrocell29"; - ATTRIBUTE Location OF \UART_1:BUART:tx_state_2\ : LABEL IS "U(3,5)"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_status_0\ : LABEL IS "macrocell30"; - ATTRIBUTE Location OF \UART_1:BUART:tx_status_0\ : LABEL IS "U(2,5)"; - ATTRIBUTE lib_model OF \UART_1:BUART:tx_status_2\ : LABEL IS "macrocell31"; - ATTRIBUTE Location OF \UART_1:BUART:tx_status_2\ : LABEL IS "U(3,4)"; - ATTRIBUTE lib_model OF \UART_1:BUART:txn\ : LABEL IS "macrocell32"; - ATTRIBUTE Location OF \UART_1:BUART:txn\ : LABEL IS "U(3,5)"; - ATTRIBUTE lib_model OF m_miso_pin(0) : LABEL IS "iocell13"; + ATTRIBUTE Location OF \SS:Async:ctrl_reg\ : LABEL IS "U(3,5)"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:nrstSts:stsreg\ : LABEL IS "statusicell3"; + ATTRIBUTE Location OF \Timer_1:TimerUDB:nrstSts:stsreg\ : LABEL IS "U(2,0)"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:run_mode\ : LABEL IS "macrocell25"; + ATTRIBUTE Location OF \Timer_1:TimerUDB:run_mode\ : LABEL IS "U(2,0)"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\ : LABEL IS "controlcell2"; + ATTRIBUTE Location OF \Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\ : LABEL IS "U(2,0)"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:sT16:timerdp:u0\ : LABEL IS "datapathcell2"; + ATTRIBUTE Location OF \Timer_1:TimerUDB:sT16:timerdp:u0\ : LABEL IS "U(2,0)"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:sT16:timerdp:u1\ : LABEL IS "datapathcell3"; + ATTRIBUTE Location OF \Timer_1:TimerUDB:sT16:timerdp:u1\ : LABEL IS "U(3,0)"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:status_tc\ : LABEL IS "macrocell26"; + ATTRIBUTE Location OF \Timer_1:TimerUDB:status_tc\ : LABEL IS "U(2,0)"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:timer_enable\ : LABEL IS "macrocell27"; + ATTRIBUTE Location OF \Timer_1:TimerUDB:timer_enable\ : LABEL IS "U(2,0)"; + ATTRIBUTE lib_model OF \Timer_1:TimerUDB:trig_disable\ : LABEL IS "macrocell28"; + ATTRIBUTE Location OF \Timer_1:TimerUDB:trig_disable\ : LABEL IS "U(2,0)"; + ATTRIBUTE lib_model OF \UART_1:BUART:counter_load_not\ : LABEL IS "macrocell29"; + ATTRIBUTE Location OF \UART_1:BUART:counter_load_not\ : LABEL IS "U(3,3)"; + ATTRIBUTE lib_model OF \UART_1:BUART:sTX:TxShifter:u0\ : LABEL IS "datapathcell4"; + ATTRIBUTE Location OF \UART_1:BUART:sTX:TxShifter:u0\ : LABEL IS "U(2,3)"; + ATTRIBUTE lib_model OF \UART_1:BUART:sTX:TxSts\ : LABEL IS "statusicell4"; + ATTRIBUTE Location OF \UART_1:BUART:sTX:TxSts\ : LABEL IS "U(2,3)"; + ATTRIBUTE lib_model OF \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\ : LABEL IS "datapathcell5"; + ATTRIBUTE Location OF \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\ : LABEL IS "U(3,3)"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_bitclk\ : LABEL IS "macrocell30"; + ATTRIBUTE Location OF \UART_1:BUART:tx_bitclk\ : LABEL IS "U(2,3)"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_bitclk_enable_pre\ : LABEL IS "macrocell31"; + ATTRIBUTE Location OF \UART_1:BUART:tx_bitclk_enable_pre\ : LABEL IS "U(2,3)"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_state_0\ : LABEL IS "macrocell32"; + ATTRIBUTE Location OF \UART_1:BUART:tx_state_0\ : LABEL IS "U(2,3)"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_state_1\ : LABEL IS "macrocell33"; + ATTRIBUTE Location OF \UART_1:BUART:tx_state_1\ : LABEL IS "U(3,0)"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_state_2\ : LABEL IS "macrocell34"; + ATTRIBUTE Location OF \UART_1:BUART:tx_state_2\ : LABEL IS "U(3,3)"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_status_0\ : LABEL IS "macrocell35"; + ATTRIBUTE Location OF \UART_1:BUART:tx_status_0\ : LABEL IS "U(2,3)"; + ATTRIBUTE lib_model OF \UART_1:BUART:tx_status_2\ : LABEL IS "macrocell36"; + ATTRIBUTE Location OF \UART_1:BUART:tx_status_2\ : LABEL IS "U(2,3)"; + ATTRIBUTE lib_model OF \UART_1:BUART:txn\ : LABEL IS "macrocell37"; + ATTRIBUTE Location OF \UART_1:BUART:txn\ : LABEL IS "U(3,3)"; + ATTRIBUTE lib_model OF m_miso_pin(0) : LABEL IS "iocell14"; ATTRIBUTE Location OF m_miso_pin(0) : LABEL IS "P0[0]"; - ATTRIBUTE lib_model OF m_mosi_pin(0) : LABEL IS "iocell14"; + ATTRIBUTE lib_model OF m_mosi_pin(0) : LABEL IS "iocell15"; ATTRIBUTE Location OF m_mosi_pin(0) : LABEL IS "P0[5]"; - ATTRIBUTE lib_model OF m_sclk_pin(0) : LABEL IS "iocell15"; + ATTRIBUTE lib_model OF m_sclk_pin(0) : LABEL IS "iocell16"; ATTRIBUTE Location OF m_sclk_pin(0) : LABEL IS "P0[6]"; COMPONENT abufcell END COMPONENT; @@ -1189,6 +1247,13 @@ BEGIN dclk_glb_1 => Net_191, dclk_1 => Net_191_local); + ClockBlock_1k__SYNC:synccell + PORT MAP( + in => ClockBlock_1k, + out => ClockBlock_1k__SYNC_OUT, + clock => ClockBlock_BUS_CLK, + clk_en => open); + Net_234:macrocell GENERIC MAP( eqn_main => "(!main_0)") @@ -1206,39 +1271,43 @@ BEGIN Net_419:macrocell GENERIC MAP( - eqn_main => "(!main_0 * !main_1 * !main_2)") + eqn_main => "(!main_0 * !main_1 * !main_2 * !main_3)") PORT MAP( q => Net_419, main_0 => Net_439, - main_1 => mywire_1_1, - main_2 => mywire_1_0); + main_1 => mywire_1_2, + main_2 => mywire_1_1, + main_3 => mywire_1_0); Net_422:macrocell GENERIC MAP( - eqn_main => "(!main_0 * !main_1 * main_2)") + eqn_main => "(!main_0 * !main_1 * !main_2 * main_3)") PORT MAP( q => Net_422, main_0 => Net_439, - main_1 => mywire_1_1, - main_2 => mywire_1_0); + main_1 => mywire_1_2, + main_2 => mywire_1_1, + main_3 => mywire_1_0); Net_425:macrocell GENERIC MAP( - eqn_main => "(!main_0 * main_1 * main_2)") + eqn_main => "(!main_0 * !main_1 * main_2 * main_3)") PORT MAP( q => Net_425, main_0 => Net_439, - main_1 => mywire_1_1, - main_2 => mywire_1_0); + main_1 => mywire_1_2, + main_2 => mywire_1_1, + main_3 => mywire_1_0); Net_428:macrocell GENERIC MAP( - eqn_main => "(!main_0 * main_1 * !main_2)") + eqn_main => "(!main_0 * !main_1 * main_2 * !main_3)") PORT MAP( q => Net_428, main_0 => Net_439, - main_1 => mywire_1_1, - main_2 => mywire_1_0); + main_1 => mywire_1_2, + main_2 => mywire_1_1, + main_3 => mywire_1_0); Net_439:macrocell GENERIC MAP( @@ -1262,6 +1331,16 @@ BEGIN main_2 => \SPIM:BSPIM:state_1\, main_3 => \SPIM:BSPIM:state_0\); + Net_585:macrocell + GENERIC MAP( + eqn_main => "(!main_0 * main_1 * !main_2 * !main_3)") + PORT MAP( + q => Net_585, + main_0 => Net_439, + main_1 => mywire_1_2, + main_2 => mywire_1_1, + main_3 => mywire_1_0); + Pin_1:logicalport GENERIC MAP( drive_mode => "010", @@ -1610,6 +1689,93 @@ BEGIN out_clock_en => '1', out_reset => '0'); + Pin_5:logicalport + GENERIC MAP( + drive_mode => "010", + ibuf_enabled => "1", + id => "f04dd9ba-954e-4352-a3f2-4deb8634d958", + init_dr_st => "1", + input_clk_en => 0, + input_sync => "1", + input_sync_mode => "0", + intr_mode => "00", + invert_in_clock => 0, + invert_in_clock_en => 0, + invert_in_reset => 0, + invert_out_clock => 0, + invert_out_clock_en => 0, + invert_out_reset => 0, + io_voltage => "", + layout_mode => "CONTIGUOUS", + oe_conn => "0", + oe_reset => 0, + oe_sync => "0", + output_clk_en => 0, + output_clock_mode => "0", + output_conn => "1", + output_mode => "0", + output_reset => 0, + output_sync => "0", + pa_in_clock => -1, + pa_in_clock_en => -1, + pa_in_reset => -1, + pa_out_clock => -1, + pa_out_clock_en => -1, + pa_out_reset => -1, + pin_aliases => "", + pin_mode => "O", + por_state => 4, + port_alias_group => "", + port_alias_required => 0, + sio_group_cnt => 0, + sio_hifreq => "", + sio_hyst => "0", + sio_ibuf => "00000000", + sio_info => "00", + sio_obuf => "00000000", + sio_refsel => "00000000", + sio_vtrip => "00000000", + slew_rate => "0", + spanning => 0, + sw_only => 0, + use_annotation => "0", + vtrip => "10", + width => 1, + in_clk_inv => 0, + in_clken_inv => 0, + in_clken_mode => 1, + in_rst_inv => 0, + out_clk_inv => 0, + out_clken_inv => 0, + out_clken_mode => 1, + out_rst_inv => 0) + PORT MAP( + in_clock_en => open, + in_reset => open, + out_clock_en => open, + out_reset => open); + + Pin_5(0):iocell + GENERIC MAP( + in_sync_mode => 0, + out_sync_mode => 0, + oe_sync_mode => 0, + logicalport => "Pin_5", + logicalport_pin_id => 0, + io_capabilities => "0000000000000000000000100000000000000000000000000000000000000001") + PORT MAP( + pa_out => Pin_5(0)__PA, + oe => open, + pin_input => Net_585, + pad_out => Pin_5(0)_PAD, + pad_in => Pin_5(0)_PAD, + in_clock => open, + in_clock_en => '1', + in_reset => '0', + out_clock => open, + out_clock_en => '1', + out_reset => '0'); + Tx_1:logicalport GENERIC MAP( drive_mode => "110", @@ -2196,11 +2362,180 @@ BEGIN control_5 => \SS:control_5\, control_4 => \SS:control_4\, control_3 => \SS:control_3\, - control_2 => \SS:control_2\, + control_2 => mywire_1_2, control_1 => mywire_1_1, control_0 => mywire_1_0, busclk => ClockBlock_BUS_CLK); + \Timer_1:TimerUDB:nrstSts:stsreg\:statusicell + GENERIC MAP( + cy_force_order => 1, + cy_int_mask => "1111111", + cy_md_select => "0000011") + PORT MAP( + clock => ClockBlock_BUS_CLK, + status_6 => open, + status_5 => open, + status_4 => open, + status_3 => \Timer_1:TimerUDB:status_3\, + status_2 => \Timer_1:TimerUDB:status_2\, + status_1 => open, + status_0 => \Timer_1:TimerUDB:status_tc\, + clk_en => ClockBlock_1k__SYNC_OUT); + + \Timer_1:TimerUDB:run_mode\:macrocell + GENERIC MAP( + eqn_main => "(main_0)") + PORT MAP( + q => \Timer_1:TimerUDB:run_mode\, + main_0 => \Timer_1:TimerUDB:control_7\, + clock_0 => ClockBlock_BUS_CLK, + clk_en => ClockBlock_1k__SYNC_OUT); + + \Timer_1:TimerUDB:sCTRLReg:AsyncCtl:ctrlreg\:controlcell + GENERIC MAP( + cy_ctrl_mode_0 => "00000000", + cy_ctrl_mode_1 => "00000000", + cy_ext_reset => 0, + cy_force_order => 1, + cy_init_value => "00000000") + PORT MAP( + control_7 => \Timer_1:TimerUDB:control_7\, + control_6 => \Timer_1:TimerUDB:control_6\, + control_5 => \Timer_1:TimerUDB:control_5\, + control_4 => \Timer_1:TimerUDB:control_4\, + control_3 => \Timer_1:TimerUDB:control_3\, + control_2 => \Timer_1:TimerUDB:control_2\, + control_1 => \Timer_1:TimerUDB:control_1\, + control_0 => \Timer_1:TimerUDB:control_0\, + busclk => ClockBlock_BUS_CLK); + + \Timer_1:TimerUDB:sT16:timerdp:u0\:datapathcell + GENERIC MAP( + a0_init => "00000000", + a1_init => "00000000", + ce0_sync => 1, + ce1_sync => 1, + cl0_sync => 1, + cl1_sync => 1, + cmsb_sync => 1, + co_msb_sync => 1, + cy_dpconfig => "0000000001000000000000000100000001000000010000000000000010000000000000001000000000000000100000000000000010000000000000001000000011111111000000001111111111111111000000000000000000000001000000000000000000011000", + d0_init => "00000000", + d1_init => "00000000", + f0_blk_sync => 1, + f0_bus_sync => 1, + f1_blk_sync => 1, + f1_bus_sync => 1, + ff0_sync => 1, + ff1_sync => 1, + ov_msb_sync => 1, + so_sync => 1, + z0_sync => 1, + z1_sync => 1, + uses_p_in => '0', + uses_p_out => '0') + PORT MAP( + clock => ClockBlock_BUS_CLK, + cs_addr_1 => \Timer_1:TimerUDB:timer_enable\, + cs_addr_0 => \Timer_1:TimerUDB:per_zero\, + clk_en => ClockBlock_1k__SYNC_OUT, + busclk => ClockBlock_BUS_CLK, + ce0 => \Timer_1:TimerUDB:sT16:timerdp:u0.ce0__sig\, + cl0 => \Timer_1:TimerUDB:sT16:timerdp:u0.cl0__sig\, + z0 => \Timer_1:TimerUDB:sT16:timerdp:u0.z0__sig\, + ff0 => \Timer_1:TimerUDB:sT16:timerdp:u0.ff0__sig\, + ce1 => \Timer_1:TimerUDB:sT16:timerdp:u0.ce1__sig\, + cl1 => \Timer_1:TimerUDB:sT16:timerdp:u0.cl1__sig\, + z1 => \Timer_1:TimerUDB:sT16:timerdp:u0.z1__sig\, + ff1 => \Timer_1:TimerUDB:sT16:timerdp:u0.ff1__sig\, + co_msb => \Timer_1:TimerUDB:sT16:timerdp:u0.co_msb__sig\, + sol_msb => \Timer_1:TimerUDB:sT16:timerdp:u0.sol_msb__sig\, + cfbo => \Timer_1:TimerUDB:sT16:timerdp:u0.cfbo__sig\, + sil => \Timer_1:TimerUDB:sT16:timerdp:u1.sor__sig\, + cmsbi => \Timer_1:TimerUDB:sT16:timerdp:u1.cmsbo__sig\); + + \Timer_1:TimerUDB:sT16:timerdp:u1\:datapathcell + GENERIC MAP( + a0_init => "00000000", + a1_init => "00000000", + ce0_sync => 1, + ce1_sync => 1, + cl0_sync => 1, + cl1_sync => 1, + cmsb_sync => 1, + co_msb_sync => 1, + cy_dpconfig => "0000000001000000000000000100000001000000010000000000000010000000000000001000000000000000100000000000000010000000000000001000000011111111000000001111111111111111100000110000000000000001000000110000000000011000", + d0_init => "00000000", + d1_init => "00000000", + f0_blk_sync => 1, + f0_bus_sync => 1, + f1_blk_sync => 1, + f1_bus_sync => 1, + ff0_sync => 1, + ff1_sync => 1, + ov_msb_sync => 1, + so_sync => 1, + z0_sync => 1, + z1_sync => 1, + uses_p_in => '0', + uses_p_out => '0') + PORT MAP( + clock => ClockBlock_BUS_CLK, + cs_addr_1 => \Timer_1:TimerUDB:timer_enable\, + cs_addr_0 => \Timer_1:TimerUDB:per_zero\, + z0_comb => \Timer_1:TimerUDB:per_zero\, + f0_bus_stat_comb => \Timer_1:TimerUDB:status_3\, + f0_blk_stat_comb => \Timer_1:TimerUDB:status_2\, + busclk => ClockBlock_BUS_CLK, + clk_en => ClockBlock_1k__SYNC_OUT, + ce0i => \Timer_1:TimerUDB:sT16:timerdp:u0.ce0__sig\, + cl0i => \Timer_1:TimerUDB:sT16:timerdp:u0.cl0__sig\, + z0i => \Timer_1:TimerUDB:sT16:timerdp:u0.z0__sig\, + ff0i => \Timer_1:TimerUDB:sT16:timerdp:u0.ff0__sig\, + ce1i => \Timer_1:TimerUDB:sT16:timerdp:u0.ce1__sig\, + cl1i => \Timer_1:TimerUDB:sT16:timerdp:u0.cl1__sig\, + z1i => \Timer_1:TimerUDB:sT16:timerdp:u0.z1__sig\, + ff1i => \Timer_1:TimerUDB:sT16:timerdp:u0.ff1__sig\, + ci => \Timer_1:TimerUDB:sT16:timerdp:u0.co_msb__sig\, + sir => \Timer_1:TimerUDB:sT16:timerdp:u0.sol_msb__sig\, + cfbi => \Timer_1:TimerUDB:sT16:timerdp:u0.cfbo__sig\, + sor => \Timer_1:TimerUDB:sT16:timerdp:u1.sor__sig\, + cmsbo => \Timer_1:TimerUDB:sT16:timerdp:u1.cmsbo__sig\); + + \Timer_1:TimerUDB:status_tc\:macrocell + GENERIC MAP( + eqn_main => "(main_0 * main_1)") + PORT MAP( + q => \Timer_1:TimerUDB:status_tc\, + main_0 => \Timer_1:TimerUDB:run_mode\, + main_1 => \Timer_1:TimerUDB:per_zero\); + + \Timer_1:TimerUDB:timer_enable\:macrocell + GENERIC MAP( + eqn_main => "(main_0 * !main_1 * !main_4) + (main_0 * !main_2 * !main_4) + (main_0 * !main_3 * !main_4)") + PORT MAP( + q => \Timer_1:TimerUDB:timer_enable\, + clock_0 => ClockBlock_BUS_CLK, + clk_en => ClockBlock_1k__SYNC_OUT, + main_0 => \Timer_1:TimerUDB:control_7\, + main_1 => \Timer_1:TimerUDB:timer_enable\, + main_2 => \Timer_1:TimerUDB:run_mode\, + main_3 => \Timer_1:TimerUDB:per_zero\, + main_4 => \Timer_1:TimerUDB:trig_disable\); + + \Timer_1:TimerUDB:trig_disable\:macrocell + GENERIC MAP( + eqn_main => "(main_0 * main_1 * main_2 * !main_3)") + PORT MAP( + q => \Timer_1:TimerUDB:trig_disable\, + clock_0 => ClockBlock_BUS_CLK, + clk_en => ClockBlock_1k__SYNC_OUT, + main_0 => \Timer_1:TimerUDB:timer_enable\, + main_1 => \Timer_1:TimerUDB:run_mode\, + main_2 => \Timer_1:TimerUDB:per_zero\, + main_3 => \Timer_1:TimerUDB:trig_disable\); + \UART_1:BUART:counter_load_not\:macrocell GENERIC MAP( eqn_main => "(!main_0 * !main_1 * !main_2) + (!main_0 * !main_1 * main_3)") diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_timing.html b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_timing.html index 6ba435b..9f1c194 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_timing.html +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_timing.html @@ -539,7 +539,7 @@

Static Timing Analysis

- + @@ -623,7 +623,7 @@

Static Timing Analysis

- + @@ -631,7 +631,7 @@

Static Timing Analysis

- + @@ -639,8 +639,8 @@

Static Timing Analysis

- - + + @@ -692,11 +692,11 @@

Static Timing Analysis

- + - - - + + + @@ -715,29 +715,29 @@

Static Timing Analysis

- - + + - - - + + + - - - - + + + + - - + + - + @@ -748,11 +748,11 @@

Static Timing Analysis

- + - - + + @@ -773,11 +773,11 @@

Static Timing Analysis

- + - - - + + + @@ -796,29 +796,29 @@

Static Timing Analysis

- - + + - - - + + + - - - - + + + + - - + + - + @@ -829,11 +829,11 @@

Static Timing Analysis

- + - - + + @@ -856,9 +856,9 @@

Static Timing Analysis

- - - + + + @@ -877,8 +877,8 @@

Static Timing Analysis

- - + + @@ -892,11 +892,11 @@

Static Timing Analysis

- + - - + + @@ -910,11 +910,11 @@

Static Timing Analysis

- + - - + + @@ -937,9 +937,9 @@

Static Timing Analysis

- - - + + + @@ -958,8 +958,8 @@

Static Timing Analysis

- - + + @@ -973,11 +973,11 @@

Static Timing Analysis

- + - - + + @@ -991,11 +991,11 @@

Static Timing Analysis

- + - - + + @@ -1018,9 +1018,9 @@

Static Timing Analysis

- - - + + + @@ -1039,8 +1039,8 @@

Static Timing Analysis

- - + + @@ -1054,11 +1054,11 @@

Static Timing Analysis

- + - - + + @@ -1072,11 +1072,11 @@

Static Timing Analysis

- + - - + + @@ -1099,9 +1099,9 @@

Static Timing Analysis

- - - + + + @@ -1120,8 +1120,8 @@

Static Timing Analysis

- - + + @@ -1135,11 +1135,11 @@

Static Timing Analysis

- + - - + + @@ -1153,11 +1153,11 @@

Static Timing Analysis

- + - - + + @@ -1178,11 +1178,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -1201,31 +1201,49 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - + + + + + + + + + + + + + + + + + + + - + @@ -1241,11 +1259,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -1264,49 +1282,31 @@

Static Timing Analysis

- - - - - - - - - - - - - - - - - - - - + + - - - - + + + + - - - - + + + + - - + + - + - + @@ -1323,10 +1323,10 @@

Static Timing Analysis

- - - - + + + + @@ -1345,8 +1345,8 @@

Static Timing Analysis

- - + + @@ -1359,35 +1359,17 @@

Static Timing Analysis

- - - - - - - - - - - - - - - - - - - - + + - - + + - + - + @@ -1403,11 +1385,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -1426,31 +1408,31 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - + - + @@ -1475,15 +1457,15 @@

Static Timing Analysis

TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell7U(3,5)1Net_439Net_439/clock_0Net_439/q1.250
Route1Net_439Net_439/qNet_422/main_02.596
macrocell4U(3,5)1Net_422Net_422/main_0Net_422/q3.350
Route1Net_422Net_422/qPin_2(0)/pin_input5.506
iocell2P3[1]1Pin_2(0)Pin_2(0)/pin_inputPin_2(0)/pad_out17.068
Route1Pin_2(0)_PADPin_2(0)/pad_outPin_2(0)_PAD 0.000
Net_439/q Pin_4(0)_PAD29.91529.632
@@ -4488,7 +6105,7 @@

Static Timing Analysis

macrocell7U(3,3)U(3,5) 1 Net_439 Net_439/clock_0
macrocell5U(3,3)U(3,5) 1 Net_425 Net_425/main_0 Net_425 Net_425/q Pin_4(0)/pin_input6.6136.330
iocell4
Net_479/q m_sclk_pin(0)_PAD27.67526.767
@@ -4575,7 +6192,7 @@

Static Timing Analysis

macrocell8U(2,3)U(3,5) 1 Net_479 Net_479/clock_0 Net_479 Net_479/q m_sclk_pin(0)/pin_input8.4437.535
iocell15iocell16 P0[6] 1 m_sclk_pin(0)
Project : PSOC5_SPI_LSM303D
Build Time : 03/22/13 10:33:30
07/25/13 16:49:01
Device : CY8C5568AXI-060
Temperature :CyMASTER_CLK 2.000 MHz 2.000 MHz61.376 MHz52.394 MHz
CyMASTER_CLK 923.077 kHz 923.077 kHz43.850 MHz42.472 MHz
CyMASTER_CLK 24.000 MHz 24.000 MHz N/A 43.373 MHz
CyPLL_OUT
\UART_1:BUART:tx_state_0\/q\UART_1:BUART:tx_state_1\/q \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_043.850 MHz22.8051060.52842.472 MHz23.5451059.788
macrocell27U(2,5)macrocell33U(3,0) 1\UART_1:BUART:tx_state_0\\UART_1:BUART:tx_state_0\/clock_0\UART_1:BUART:tx_state_0\/q\UART_1:BUART:tx_state_1\\UART_1:BUART:tx_state_1\/clock_0\UART_1:BUART:tx_state_1\/q 1.250
Route 1\UART_1:BUART:tx_state_0\\UART_1:BUART:tx_state_0\/q\UART_1:BUART:counter_load_not\/main_14.383\UART_1:BUART:tx_state_1\\UART_1:BUART:tx_state_1\/q\UART_1:BUART:counter_load_not\/main_05.133
macrocell24U(3,5)macrocell29U(3,3) 1 \UART_1:BUART:counter_load_not\\UART_1:BUART:counter_load_not\/main_1\UART_1:BUART:counter_load_not\/main_0 \UART_1:BUART:counter_load_not\/q 3.350
\UART_1:BUART:counter_load_not\ \UART_1:BUART:counter_load_not\/q \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_02.3022.292
datapathcell3U(2,5)datapathcell5U(3,3) 1 \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\
\UART_1:BUART:tx_state_1\/q\UART_1:BUART:tx_state_0\/q \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_045.027 MHz22.2091061.12444.039 MHz22.7071060.626
macrocell28U(2,5)macrocell32U(2,3) 1\UART_1:BUART:tx_state_1\\UART_1:BUART:tx_state_1\/clock_0\UART_1:BUART:tx_state_1\/q\UART_1:BUART:tx_state_0\\UART_1:BUART:tx_state_0\/clock_0\UART_1:BUART:tx_state_0\/q 1.250
Route 1\UART_1:BUART:tx_state_1\\UART_1:BUART:tx_state_1\/q\UART_1:BUART:counter_load_not\/main_03.787\UART_1:BUART:tx_state_0\\UART_1:BUART:tx_state_0\/q\UART_1:BUART:counter_load_not\/main_14.295
macrocell24U(3,5)macrocell29U(3,3) 1 \UART_1:BUART:counter_load_not\\UART_1:BUART:counter_load_not\/main_0\UART_1:BUART:counter_load_not\/main_1 \UART_1:BUART:counter_load_not\/q 3.350
\UART_1:BUART:counter_load_not\ \UART_1:BUART:counter_load_not\/q \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_02.3022.292
datapathcell3U(2,5)datapathcell5U(3,3) 1 \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\
\UART_1:BUART:tx_bitclk\/q \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_046.471 MHz21.5191061.81446.484 MHz21.5131061.820
macrocell25U(2,5)macrocell30U(2,3) 1 \UART_1:BUART:tx_bitclk\ \UART_1:BUART:tx_bitclk\/clock_0\UART_1:BUART:tx_bitclk\ \UART_1:BUART:tx_bitclk\/q \UART_1:BUART:counter_load_not\/main_33.0973.101
macrocell24U(3,5)macrocell29U(3,3) 1 \UART_1:BUART:counter_load_not\ \UART_1:BUART:counter_load_not\/main_3\UART_1:BUART:counter_load_not\ \UART_1:BUART:counter_load_not\/q \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_02.3022.292
datapathcell3U(2,5)datapathcell5U(3,3) 1 \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\
\UART_1:BUART:tx_state_2\/q \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_046.544 MHz21.4851061.84846.572 MHz21.4721061.861
macrocell29U(3,5)macrocell34U(3,3) 1 \UART_1:BUART:tx_state_2\ \UART_1:BUART:tx_state_2\/clock_0\UART_1:BUART:tx_state_2\ \UART_1:BUART:tx_state_2\/q \UART_1:BUART:counter_load_not\/main_23.0633.060
macrocell24U(3,5)macrocell29U(3,3) 1 \UART_1:BUART:counter_load_not\ \UART_1:BUART:counter_load_not\/main_2\UART_1:BUART:counter_load_not\ \UART_1:BUART:counter_load_not\/q \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cs_addr_02.3022.292
datapathcell3U(2,5)datapathcell5U(3,3) 1 \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\
\UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cl0_comb \UART_1:BUART:sTX:TxShifter:u0\/cs_addr_050.176 MHz19.9301063.40350.181 MHz19.9281063.405
datapathcell3U(2,5)datapathcell5U(3,3) 1 \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\ \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/clock\UART_1:BUART:tx_bitclk_dp\ \UART_1:BUART:sTX:sCLOCK:TxBitClkGen\/cl0_comb \UART_1:BUART:tx_bitclk_enable_pre\/main_02.2902.301
macrocell26U(2,5)macrocell31U(2,3) 1 \UART_1:BUART:tx_bitclk_enable_pre\ \UART_1:BUART:tx_bitclk_enable_pre\/main_0\UART_1:BUART:tx_bitclk_enable_pre\ \UART_1:BUART:tx_bitclk_enable_pre\/q \UART_1:BUART:sTX:TxShifter:u0\/cs_addr_02.3202.307
datapathcell2U(3,5)datapathcell4U(2,3) 1 \UART_1:BUART:sTX:TxShifter:u0\
\UART_1:BUART:sTX:TxShifter:u0\/f0_blk_stat_comb \UART_1:BUART:sTX:TxSts\/status_061.241 MHz16.3291067.00461.908 MHz16.1531067.180
datapathcell2U(3,5)datapathcell4U(2,3) 1 \UART_1:BUART:sTX:TxShifter:u0\ \UART_1:BUART:sTX:TxShifter:u0\/clock\UART_1:BUART:tx_fifo_empty\ \UART_1:BUART:sTX:TxShifter:u0\/f0_blk_stat_comb \UART_1:BUART:tx_status_0\/main_23.2273.639
macrocell30U(2,5)macrocell35U(2,3) 1 \UART_1:BUART:tx_status_0\ \UART_1:BUART:tx_status_0\/main_2\UART_1:BUART:tx_status_0\ \UART_1:BUART:tx_status_0\/q \UART_1:BUART:sTX:TxSts\/status_02.9022.314
statusicell3U(3,4)statusicell4U(2,3) 1 \UART_1:BUART:sTX:TxSts\
\UART_1:BUART:sTX:TxShifter:u0\/so_comb\UART_1:BUART:txn\/main_376.348 MHz13.0981070.235\UART_1:BUART:tx_state_1\/q\UART_1:BUART:sTX:TxSts\/status_073.578 MHz13.5911069.742
datapathcell2U(3,5)macrocell33U(3,0) 1\UART_1:BUART:sTX:TxShifter:u0\\UART_1:BUART:sTX:TxShifter:u0\/clock\UART_1:BUART:sTX:TxShifter:u0\/so_comb7.280\UART_1:BUART:tx_state_1\\UART_1:BUART:tx_state_1\/clock_0\UART_1:BUART:tx_state_1\/q1.250
Route 1\UART_1:BUART:tx_shift_out\\UART_1:BUART:sTX:TxShifter:u0\/so_comb\UART_1:BUART:txn\/main_32.308\UART_1:BUART:tx_state_1\\UART_1:BUART:tx_state_1\/q\UART_1:BUART:tx_status_0\/main_05.107
macrocell32U(3,5)macrocell35U(2,3) 1\UART_1:BUART:txn\\UART_1:BUART:tx_status_0\\UART_1:BUART:tx_status_0\/main_0\UART_1:BUART:tx_status_0\/q3.350
Route 1\UART_1:BUART:tx_status_0\\UART_1:BUART:tx_status_0\/q\UART_1:BUART:sTX:TxSts\/status_02.314
statusicell4U(2,3)1\UART_1:BUART:sTX:TxSts\ SETUP3.5101.570
Clock
\UART_1:BUART:tx_state_0\/q\UART_1:BUART:sTX:TxSts\/status_077.640 MHz12.8801070.453\UART_1:BUART:sTX:TxShifter:u0\/so_comb\UART_1:BUART:txn\/main_376.318 MHz13.1031070.230
macrocell27U(2,5)1\UART_1:BUART:tx_state_0\\UART_1:BUART:tx_state_0\/clock_0\UART_1:BUART:tx_state_0\/q1.250
Route 1\UART_1:BUART:tx_state_0\\UART_1:BUART:tx_state_0\/q\UART_1:BUART:tx_status_0\/main_13.808
macrocell30U(2,5)datapathcell4U(2,3) 1\UART_1:BUART:tx_status_0\\UART_1:BUART:tx_status_0\/main_1\UART_1:BUART:tx_status_0\/q3.350\UART_1:BUART:sTX:TxShifter:u0\\UART_1:BUART:sTX:TxShifter:u0\/clock\UART_1:BUART:sTX:TxShifter:u0\/so_comb7.280
Route 1\UART_1:BUART:tx_status_0\\UART_1:BUART:tx_status_0\/q\UART_1:BUART:sTX:TxSts\/status_02.902\UART_1:BUART:tx_shift_out\\UART_1:BUART:sTX:TxShifter:u0\/so_comb\UART_1:BUART:txn\/main_32.313
statusicell3U(3,4)macrocell37U(3,3) 1\UART_1:BUART:sTX:TxSts\\UART_1:BUART:txn\ SETUP1.5703.510
Clock
\UART_1:BUART:tx_state_1\/q\UART_1:BUART:sTX:TxSts\/status_077.845 MHz12.8461070.487\UART_1:BUART:sTX:TxShifter:u0\/cs_addr_278.858 MHz12.6811070.652
macrocell28U(2,5)macrocell33U(3,0) 1 \UART_1:BUART:tx_state_1\ \UART_1:BUART:tx_state_1\/clock_01 \UART_1:BUART:tx_state_1\ \UART_1:BUART:tx_state_1\/q\UART_1:BUART:tx_status_0\/main_03.774
macrocell30U(2,5)1\UART_1:BUART:tx_status_0\\UART_1:BUART:tx_status_0\/main_0\UART_1:BUART:tx_status_0\/q3.350
Route 1\UART_1:BUART:tx_status_0\\UART_1:BUART:tx_status_0\/q\UART_1:BUART:sTX:TxSts\/status_02.902\UART_1:BUART:sTX:TxShifter:u0\/cs_addr_25.141
statusicell3U(3,4)datapathcell4U(2,3) 1\UART_1:BUART:sTX:TxSts\\UART_1:BUART:sTX:TxShifter:u0\ SETUP1.5706.290
Clock
\UART_1:BUART:tx_state_0\/q\UART_1:BUART:sTX:TxShifter:u0\/cs_addr_179.327 MHz12.6061070.727\UART_1:BUART:sTX:TxShifter:u0\/f0_blk_stat_comb\UART_1:BUART:tx_state_0\/main_280.457 MHz12.4291070.904
macrocell27U(2,5)datapathcell4U(2,3) 1\UART_1:BUART:tx_state_0\\UART_1:BUART:tx_state_0\/clock_0\UART_1:BUART:tx_state_0\/q1.250\UART_1:BUART:sTX:TxShifter:u0\\UART_1:BUART:sTX:TxShifter:u0\/clock\UART_1:BUART:sTX:TxShifter:u0\/f0_blk_stat_comb5.280
Route 1\UART_1:BUART:tx_state_0\\UART_1:BUART:tx_state_0\/q\UART_1:BUART:sTX:TxShifter:u0\/cs_addr_15.066\UART_1:BUART:tx_fifo_empty\\UART_1:BUART:sTX:TxShifter:u0\/f0_blk_stat_comb\UART_1:BUART:tx_state_0\/main_23.639
datapathcell2U(3,5)macrocell32U(2,3) 1\UART_1:BUART:sTX:TxShifter:u0\\UART_1:BUART:tx_state_0\ SETUP6.2903.510
Clock
@@ -1497,11 +1479,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -1520,49 +1502,67 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - - - - + + + + - - - - + + + + - - + + - + + + + + + + + + + + + + + + + + + + - + @@ -1578,11 +1578,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -1601,31 +1601,49 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - + + + + + + + + + + + + + + + + + + + - + @@ -1641,11 +1659,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -1664,31 +1682,49 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - + + + + + + + + + + + + + + + + + + + - + @@ -1704,11 +1740,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -1727,31 +1763,49 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - + + + + + + + + + + + + + + + + + + + - + @@ -1767,11 +1821,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -1790,49 +1844,49 @@

Static Timing Analysis

- - + + - - - + + + - - - - + + + + - - + + - - - - + + + + - - - - + + + + - - + + - + - + @@ -1848,11 +1902,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -1871,49 +1925,31 @@

Static Timing Analysis

- - - - - - - - - - - - - - - - - - - - + + - - - - + + + + - - - - + + + + - - + + - + - + @@ -1929,11 +1965,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -1952,49 +1988,31 @@

Static Timing Analysis

- - - - - - - - - - - - - - - - - - - - + + - - - - + + + + - - + + - - - - + + + + - - + + - + - + @@ -2010,11 +2028,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -2033,49 +2051,31 @@

Static Timing Analysis

- - - - - - - - - - - - - - - - - - - - + + - - - - + + + + - - - - + + + + - - + + - + - + @@ -2091,11 +2091,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -2114,31 +2114,31 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - + - + @@ -2154,11 +2154,11 @@

Static Timing Analysis

- - - - - + + + + + @@ -2177,46 +2177,64 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - - - + + + + + + + + + + + + + + + + + + + + + - - - - + + + + - - + + - + @@ -2240,25 +2258,1450 @@

Static Timing Analysis

- -
\SPIM:BSPIM:sR8:Dp:u0\/f1_blk_stat_comb\SPIM:BSPIM:RxStsReg\/status_661.376 MHz16.293483.707\Timer_1:TimerUDB:sT16:timerdp:u0\/z0\Timer_1:TimerUDB:sT16:timerdp:u1\/ci43.373 MHz23.05618.611
datapathcell1U(2,4)datapathcell2U(2,0) 1\SPIM:BSPIM:sR8:Dp:u0\\SPIM:BSPIM:sR8:Dp:u0\/clock\SPIM:BSPIM:sR8:Dp:u0\/f1_blk_stat_comb5.280\Timer_1:TimerUDB:sT16:timerdp:u0\\Timer_1:TimerUDB:sT16:timerdp:u0\/clock\Timer_1:TimerUDB:sT16:timerdp:u0\/z02.320
Route 1\SPIM:BSPIM:rx_status_4\\SPIM:BSPIM:sR8:Dp:u0\/f1_blk_stat_comb\SPIM:BSPIM:rx_status_6\/main_53.785\Timer_1:TimerUDB:sT16:timerdp:u0.z0__sig\\Timer_1:TimerUDB:sT16:timerdp:u0\/z0\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i0.000
macrocell18U(2,5)datapathcell3U(3,0) 1\SPIM:BSPIM:rx_status_6\\SPIM:BSPIM:rx_status_6\/main_5\SPIM:BSPIM:rx_status_6\/q3.350\Timer_1:TimerUDB:sT16:timerdp:u1\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb2.960
Route 1\SPIM:BSPIM:rx_status_6\\SPIM:BSPIM:rx_status_6\/q\SPIM:BSPIM:RxStsReg\/status_62.308\Timer_1:TimerUDB:per_zero\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_02.976
statusicell1U(2,5)datapathcell2U(2,0) 1\SPIM:BSPIM:RxStsReg\\Timer_1:TimerUDB:sT16:timerdp:u0\\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_0\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb9.710
Route 1\Timer_1:TimerUDB:sT16:timerdp:u0.co_msb__sig\\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb\Timer_1:TimerUDB:sT16:timerdp:u1\/ci0.000
datapathcell3U(3,0)1\Timer_1:TimerUDB:sT16:timerdp:u1\ SETUP1.5705.090
Clock
\SPIM:BSPIM:sR8:Dp:u0\/so_comb\SPIM:BSPIM:mosi_hs_reg\/main_364.416 MHz15.524484.476\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb\Timer_1:TimerUDB:sT16:timerdp:u1\/ci46.241 MHz21.62620.041
datapathcell1U(2,4)datapathcell3U(3,0) 1\SPIM:BSPIM:sR8:Dp:u0\\SPIM:BSPIM:sR8:Dp:u0\/clock\SPIM:BSPIM:sR8:Dp:u0\/so_comb8.300\Timer_1:TimerUDB:sT16:timerdp:u1\\Timer_1:TimerUDB:sT16:timerdp:u1\/clock\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb3.850
Route 1\SPIM:BSPIM:mosi_from_dp\\SPIM:BSPIM:sR8:Dp:u0\/so_comb\SPIM:BSPIM:mosi_hs_reg\/main_33.714\Timer_1:TimerUDB:per_zero\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_02.976
macrocell16U(3,5)datapathcell2U(2,0) 1\SPIM:BSPIM:mosi_hs_reg\\Timer_1:TimerUDB:sT16:timerdp:u0\\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_0\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb9.710
Route 1\Timer_1:TimerUDB:sT16:timerdp:u0.co_msb__sig\\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb\Timer_1:TimerUDB:sT16:timerdp:u1\/ci0.000
datapathcell3U(3,0)1\Timer_1:TimerUDB:sT16:timerdp:u1\ SETUP3.5105.090
Clock
\SPIM:BSPIM:sR8:Dp:u0\/so_comb\SPIM:BSPIM:mosi_pre_reg\/main_368.306 MHz14.640485.360\Timer_1:TimerUDB:sT16:timerdp:u0\/z0\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_050.566 MHz19.77621.891
datapathcell1U(2,4)datapathcell2U(2,0) 1\SPIM:BSPIM:sR8:Dp:u0\\SPIM:BSPIM:sR8:Dp:u0\/clock\SPIM:BSPIM:sR8:Dp:u0\/so_comb8.300\Timer_1:TimerUDB:sT16:timerdp:u0\\Timer_1:TimerUDB:sT16:timerdp:u0\/clock\Timer_1:TimerUDB:sT16:timerdp:u0\/z02.320
Route 1\SPIM:BSPIM:mosi_from_dp\\SPIM:BSPIM:sR8:Dp:u0\/so_comb\SPIM:BSPIM:mosi_pre_reg\/main_32.830\Timer_1:TimerUDB:sT16:timerdp:u0.z0__sig\\Timer_1:TimerUDB:sT16:timerdp:u0\/z0\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i0.000
macrocell17U(2,4)datapathcell3U(3,0) 1\SPIM:BSPIM:mosi_pre_reg\\Timer_1:TimerUDB:sT16:timerdp:u1\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb2.960
Route 1\Timer_1:TimerUDB:per_zero\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_02.976
datapathcell2U(2,0)1\Timer_1:TimerUDB:sT16:timerdp:u0\ SETUP3.51011.520
Clock
\SPIM:BSPIM:sR8:Dp:u0\/so_comb\SPIM:BSPIM:mosi_from_dp_reg\/main_068.353 MHz14.630485.370\Timer_1:TimerUDB:sT16:timerdp:u0\/z0\Timer_1:TimerUDB:sT16:timerdp:u1\/cs_addr_050.571 MHz19.77421.893
datapathcell1U(2,4)datapathcell2U(2,0) 1\SPIM:BSPIM:sR8:Dp:u0\\SPIM:BSPIM:sR8:Dp:u0\/clock\SPIM:BSPIM:sR8:Dp:u0\/so_comb8.300\Timer_1:TimerUDB:sT16:timerdp:u0\\Timer_1:TimerUDB:sT16:timerdp:u0\/clock\Timer_1:TimerUDB:sT16:timerdp:u0\/z02.320
Route 1\SPIM:BSPIM:mosi_from_dp\\SPIM:BSPIM:sR8:Dp:u0\/so_comb\SPIM:BSPIM:mosi_from_dp_reg\/main_02.820\Timer_1:TimerUDB:sT16:timerdp:u0.z0__sig\\Timer_1:TimerUDB:sT16:timerdp:u0\/z0\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i0.000
macrocell15U(3,4)datapathcell3U(3,0) 1\SPIM:BSPIM:mosi_from_dp_reg\\Timer_1:TimerUDB:sT16:timerdp:u1\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb2.960
datapathcell3U(3,0)1\Timer_1:TimerUDB:sT16:timerdp:u1\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb\Timer_1:TimerUDB:sT16:timerdp:u1\/cs_addr_02.974
datapathcell3U(3,0)1\Timer_1:TimerUDB:sT16:timerdp:u1\ SETUP3.51011.520
Clock
\SPIM:BSPIM:state_2\/q\SPIM:BSPIM:TxStsReg\/status_073.676 MHz13.573486.427\Timer_1:TimerUDB:timer_enable\/q\Timer_1:TimerUDB:sT16:timerdp:u1\/ci52.576 MHz19.02022.647
macrocell21U(2,4)macrocell27U(2,0) 1\SPIM:BSPIM:state_2\\SPIM:BSPIM:state_2\/clock_0\SPIM:BSPIM:state_2\/q\Timer_1:TimerUDB:timer_enable\\Timer_1:TimerUDB:timer_enable\/clock_0\Timer_1:TimerUDB:timer_enable\/q 1.250
Route 1\SPIM:BSPIM:state_2\\SPIM:BSPIM:state_2\/q\SPIM:BSPIM:tx_status_0\/main_04.486\Timer_1:TimerUDB:timer_enable\\Timer_1:TimerUDB:timer_enable\/q\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_12.970
macrocell22U(2,4)datapathcell2U(2,0) 1\SPIM:BSPIM:tx_status_0\\SPIM:BSPIM:tx_status_0\/main_0\SPIM:BSPIM:tx_status_0\/q3.350\Timer_1:TimerUDB:sT16:timerdp:u0\\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_1\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb9.710
Route 1\SPIM:BSPIM:tx_status_0\\SPIM:BSPIM:tx_status_0\/q\SPIM:BSPIM:TxStsReg\/status_02.917\Timer_1:TimerUDB:sT16:timerdp:u0.co_msb__sig\\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb\Timer_1:TimerUDB:sT16:timerdp:u1\/ci0.000
statusicell2U(2,3)datapathcell3U(3,0) 1\SPIM:BSPIM:TxStsReg\\Timer_1:TimerUDB:sT16:timerdp:u1\ SETUP1.5705.090
Clock
\SPIM:BSPIM:BitCounter\/count_1\SPIM:BSPIM:TxStsReg\/status_374.772 MHz13.374486.626\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_054.508 MHz18.34623.321
count7cellU(2,4)1\SPIM:BSPIM:BitCounter\\SPIM:BSPIM:BitCounter\/clock\SPIM:BSPIM:BitCounter\/count_12.110
Route 1\SPIM:BSPIM:count_1\\SPIM:BSPIM:BitCounter\/count_1\SPIM:BSPIM:dpcounter_one\/main_34.028
macrocell10U(2,3)datapathcell3U(3,0) 1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/main_3\SPIM:BSPIM:dpcounter_one\/q3.350\Timer_1:TimerUDB:sT16:timerdp:u1\\Timer_1:TimerUDB:sT16:timerdp:u1\/clock\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb3.850
Route 1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/q\SPIM:BSPIM:TxStsReg\/status_32.316\Timer_1:TimerUDB:per_zero\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_02.976
statusicell2U(2,3)datapathcell2U(2,0) 1\SPIM:BSPIM:TxStsReg\\Timer_1:TimerUDB:sT16:timerdp:u0\ SETUP1.57011.520
Clock
\SPIM:BSPIM:state_1\/q\SPIM:BSPIM:TxStsReg\/status_075.313 MHz13.278486.722\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb\Timer_1:TimerUDB:sT16:timerdp:u1\/cs_addr_054.514 MHz18.34423.323
macrocell20U(2,3)1\SPIM:BSPIM:state_1\\SPIM:BSPIM:state_1\/clock_0\SPIM:BSPIM:state_1\/q1.250
Route 1\SPIM:BSPIM:state_1\\SPIM:BSPIM:state_1\/q\SPIM:BSPIM:tx_status_0\/main_14.191
macrocell22U(2,4)datapathcell3U(3,0) 1\SPIM:BSPIM:tx_status_0\\SPIM:BSPIM:tx_status_0\/main_1\SPIM:BSPIM:tx_status_0\/q3.350\Timer_1:TimerUDB:sT16:timerdp:u1\\Timer_1:TimerUDB:sT16:timerdp:u1\/clock\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb3.850
Route datapathcell3U(3,0) 1\SPIM:BSPIM:tx_status_0\\SPIM:BSPIM:tx_status_0\/q\SPIM:BSPIM:TxStsReg\/status_02.917\Timer_1:TimerUDB:sT16:timerdp:u1\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb\Timer_1:TimerUDB:sT16:timerdp:u1\/cs_addr_02.974
statusicell2U(2,3)datapathcell3U(3,0) 1\SPIM:BSPIM:TxStsReg\\Timer_1:TimerUDB:sT16:timerdp:u1\ SETUP1.57011.520
Clock
\SPIM:BSPIM:BitCounter\/count_1\SPIM:BSPIM:RxStsReg\/status_675.919 MHz13.172486.828\Timer_1:TimerUDB:timer_enable\/q\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_163.532 MHz15.74025.927
count7cellU(2,4)1\SPIM:BSPIM:BitCounter\\SPIM:BSPIM:BitCounter\/clock\SPIM:BSPIM:BitCounter\/count_12.110
Route 1\SPIM:BSPIM:count_1\\SPIM:BSPIM:BitCounter\/count_1\SPIM:BSPIM:rx_status_6\/main_33.834
macrocell18U(2,5)macrocell27U(2,0) 1\SPIM:BSPIM:rx_status_6\\SPIM:BSPIM:rx_status_6\/main_3\SPIM:BSPIM:rx_status_6\/q3.350\Timer_1:TimerUDB:timer_enable\\Timer_1:TimerUDB:timer_enable\/clock_0\Timer_1:TimerUDB:timer_enable\/q1.250
Route 1\SPIM:BSPIM:rx_status_6\\SPIM:BSPIM:rx_status_6\/q\SPIM:BSPIM:RxStsReg\/status_62.308\Timer_1:TimerUDB:timer_enable\\Timer_1:TimerUDB:timer_enable\/q\Timer_1:TimerUDB:sT16:timerdp:u0\/cs_addr_12.970
statusicell1U(2,5)datapathcell2U(2,0) 1\SPIM:BSPIM:RxStsReg\\Timer_1:TimerUDB:sT16:timerdp:u0\ SETUP1.57011.520
Clock
\SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb\SPIM:BSPIM:state_1\/main_875.976 MHz13.162486.838\Timer_1:TimerUDB:timer_enable\/q\Timer_1:TimerUDB:sT16:timerdp:u1\/cs_addr_163.971 MHz15.63226.035
datapathcell1U(2,4)macrocell27U(2,0) 1\SPIM:BSPIM:sR8:Dp:u0\\SPIM:BSPIM:sR8:Dp:u0\/clock\SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb5.280\Timer_1:TimerUDB:timer_enable\\Timer_1:TimerUDB:timer_enable\/clock_0\Timer_1:TimerUDB:timer_enable\/q1.250
Route 1\SPIM:BSPIM:tx_status_1\\SPIM:BSPIM:sR8:Dp:u0\/f0_blk_stat_comb\SPIM:BSPIM:state_1\/main_84.372\Timer_1:TimerUDB:timer_enable\\Timer_1:TimerUDB:timer_enable\/q\Timer_1:TimerUDB:sT16:timerdp:u1\/cs_addr_12.862
macrocell20U(2,3)datapathcell3U(3,0) 1\SPIM:BSPIM:state_1\\Timer_1:TimerUDB:sT16:timerdp:u1\ SETUP3.51011.520
Clock
\SPIM:BSPIM:BitCounter\/count_3\SPIM:BSPIM:RxStsReg\/status_676.023 MHz13.154486.846\Timer_1:TimerUDB:sT16:timerdp:u0\/z0\Timer_1:TimerUDB:nrstSts:stsreg\/status_065.240 MHz15.32826.339
count7cellU(2,4)datapathcell2U(2,0) 1\SPIM:BSPIM:BitCounter\\SPIM:BSPIM:BitCounter\/clock\SPIM:BSPIM:BitCounter\/count_32.110\Timer_1:TimerUDB:sT16:timerdp:u0\\Timer_1:TimerUDB:sT16:timerdp:u0\/clock\Timer_1:TimerUDB:sT16:timerdp:u0\/z02.320
Route 1\SPIM:BSPIM:count_3\\SPIM:BSPIM:BitCounter\/count_3\SPIM:BSPIM:rx_status_6\/main_13.816\Timer_1:TimerUDB:sT16:timerdp:u0.z0__sig\\Timer_1:TimerUDB:sT16:timerdp:u0\/z0\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i0.000
macrocell18U(2,5)datapathcell3U(3,0) 1\SPIM:BSPIM:rx_status_6\\SPIM:BSPIM:rx_status_6\/main_1\SPIM:BSPIM:rx_status_6\/q\Timer_1:TimerUDB:sT16:timerdp:u1\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0i\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb2.960
Route 1\Timer_1:TimerUDB:per_zero\\Timer_1:TimerUDB:sT16:timerdp:u1\/z0_comb\Timer_1:TimerUDB:status_tc\/main_12.866
macrocell26U(2,0)1\Timer_1:TimerUDB:status_tc\\Timer_1:TimerUDB:status_tc\/main_1\Timer_1:TimerUDB:status_tc\/q 3.350
Route 1\SPIM:BSPIM:rx_status_6\\SPIM:BSPIM:rx_status_6\/q\SPIM:BSPIM:RxStsReg\/status_62.308\Timer_1:TimerUDB:status_tc\\Timer_1:TimerUDB:status_tc\/q\Timer_1:TimerUDB:nrstSts:stsreg\/status_02.262
statusicell1U(2,5)statusicell3U(2,0) 1\SPIM:BSPIM:RxStsReg\\Timer_1:TimerUDB:nrstSts:stsreg\ SETUP 1.570
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SourceDestinationFMaxDelay (ns)Slack (ns)Violation
\SPIM:BSPIM:BitCounter\/count_2\SPIM:BSPIM:TxStsReg\/status_352.394 MHz19.086480.914
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
count7cellU(2,4)1\SPIM:BSPIM:BitCounter\\SPIM:BSPIM:BitCounter\/clock\SPIM:BSPIM:BitCounter\/count_22.110
Route 1\SPIM:BSPIM:count_2\\SPIM:BSPIM:BitCounter\/count_2\SPIM:BSPIM:dpcounter_one\/main_26.478
macrocell11U(2,5)1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/main_2\SPIM:BSPIM:dpcounter_one\/q3.350
Route 1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/q\SPIM:BSPIM:TxStsReg\/status_35.578
statusicell2U(2,5)1\SPIM:BSPIM:TxStsReg\SETUP1.570
Clock Skew0.000
+
\SPIM:BSPIM:state_1\/q\SPIM:BSPIM:TxStsReg\/status_056.770 MHz17.615482.385
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell21U(2,5)1\SPIM:BSPIM:state_1\\SPIM:BSPIM:state_1\/clock_0\SPIM:BSPIM:state_1\/q1.250
Route 1\SPIM:BSPIM:state_1\\SPIM:BSPIM:state_1\/q\SPIM:BSPIM:tx_status_0\/main_18.508
macrocell23U(2,4)1\SPIM:BSPIM:tx_status_0\\SPIM:BSPIM:tx_status_0\/main_1\SPIM:BSPIM:tx_status_0\/q3.350
Route 1\SPIM:BSPIM:tx_status_0\\SPIM:BSPIM:tx_status_0\/q\SPIM:BSPIM:TxStsReg\/status_02.937
statusicell2U(2,5)1\SPIM:BSPIM:TxStsReg\SETUP1.570
Clock Skew0.000
+
\SPIM:BSPIM:state_1\/q\SPIM:BSPIM:sR8:Dp:u0\/cs_addr_157.166 MHz17.493482.507
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell21U(2,5)1\SPIM:BSPIM:state_1\\SPIM:BSPIM:state_1\/clock_0\SPIM:BSPIM:state_1\/q1.250
Route 1\SPIM:BSPIM:state_1\\SPIM:BSPIM:state_1\/q\SPIM:BSPIM:sR8:Dp:u0\/cs_addr_19.073
datapathcell1U(2,4)1\SPIM:BSPIM:sR8:Dp:u0\SETUP7.170
Clock Skew0.000
+
\SPIM:BSPIM:BitCounter\/count_0\SPIM:BSPIM:TxStsReg\/status_358.493 MHz17.096482.904
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
count7cellU(2,4)1\SPIM:BSPIM:BitCounter\\SPIM:BSPIM:BitCounter\/clock\SPIM:BSPIM:BitCounter\/count_02.110
Route 1\SPIM:BSPIM:count_0\\SPIM:BSPIM:BitCounter\/count_0\SPIM:BSPIM:dpcounter_one\/main_44.488
macrocell11U(2,5)1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/main_4\SPIM:BSPIM:dpcounter_one\/q3.350
Route 1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/q\SPIM:BSPIM:TxStsReg\/status_35.578
statusicell2U(2,5)1\SPIM:BSPIM:TxStsReg\SETUP1.570
Clock Skew0.000
+
\SPIM:BSPIM:BitCounter\/count_3\SPIM:BSPIM:TxStsReg\/status_358.772 MHz17.015482.985
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
count7cellU(2,4)1\SPIM:BSPIM:BitCounter\\SPIM:BSPIM:BitCounter\/clock\SPIM:BSPIM:BitCounter\/count_32.110
Route 1\SPIM:BSPIM:count_3\\SPIM:BSPIM:BitCounter\/count_3\SPIM:BSPIM:dpcounter_one\/main_14.407
macrocell11U(2,5)1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/main_1\SPIM:BSPIM:dpcounter_one\/q3.350
Route 1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/q\SPIM:BSPIM:TxStsReg\/status_35.578
statusicell2U(2,5)1\SPIM:BSPIM:TxStsReg\SETUP1.570
Clock Skew0.000
+
\SPIM:BSPIM:BitCounter\/count_4\SPIM:BSPIM:TxStsReg\/status_359.841 MHz16.711483.289
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
count7cellU(2,4)1\SPIM:BSPIM:BitCounter\\SPIM:BSPIM:BitCounter\/clock\SPIM:BSPIM:BitCounter\/count_42.110
Route 1\SPIM:BSPIM:count_4\\SPIM:BSPIM:BitCounter\/count_4\SPIM:BSPIM:dpcounter_one\/main_04.103
macrocell11U(2,5)1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/main_0\SPIM:BSPIM:dpcounter_one\/q3.350
Route 1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/q\SPIM:BSPIM:TxStsReg\/status_35.578
statusicell2U(2,5)1\SPIM:BSPIM:TxStsReg\SETUP1.570
Clock Skew0.000
+
\SPIM:BSPIM:BitCounter\/count_1\SPIM:BSPIM:TxStsReg\/status_360.245 MHz16.599483.401
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
count7cellU(2,4)1\SPIM:BSPIM:BitCounter\\SPIM:BSPIM:BitCounter\/clock\SPIM:BSPIM:BitCounter\/count_12.110
Route 1\SPIM:BSPIM:count_1\\SPIM:BSPIM:BitCounter\/count_1\SPIM:BSPIM:dpcounter_one\/main_33.991
macrocell11U(2,5)1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/main_3\SPIM:BSPIM:dpcounter_one\/q3.350
Route 1\SPIM:BSPIM:dpcounter_one\\SPIM:BSPIM:dpcounter_one\/q\SPIM:BSPIM:TxStsReg\/status_35.578
statusicell2U(2,5)1\SPIM:BSPIM:TxStsReg\SETUP1.570
Clock Skew0.000
+
\SPIM:BSPIM:sR8:Dp:u0\/f1_blk_stat_comb\SPIM:BSPIM:RxStsReg\/status_661.072 MHz16.374483.626
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
datapathcell1U(2,4)1\SPIM:BSPIM:sR8:Dp:u0\\SPIM:BSPIM:sR8:Dp:u0\/clock\SPIM:BSPIM:sR8:Dp:u0\/f1_blk_stat_comb5.280
Route 1\SPIM:BSPIM:rx_status_4\\SPIM:BSPIM:sR8:Dp:u0\/f1_blk_stat_comb\SPIM:BSPIM:rx_status_6\/main_53.241
macrocell19U(2,3)1\SPIM:BSPIM:rx_status_6\\SPIM:BSPIM:rx_status_6\/main_5\SPIM:BSPIM:rx_status_6\/q3.350
Route 1\SPIM:BSPIM:rx_status_6\\SPIM:BSPIM:rx_status_6\/q\SPIM:BSPIM:RxStsReg\/status_62.933
statusicell1U(3,4)1\SPIM:BSPIM:RxStsReg\SETUP1.570
Clock Skew0.000
+
\SPIM:BSPIM:state_2\/q\SPIM:BSPIM:mosi_hs_reg\/main_063.147 MHz15.836484.164
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell22U(2,4)1\SPIM:BSPIM:state_2\\SPIM:BSPIM:state_2\/clock_0\SPIM:BSPIM:state_2\/q1.250
Route 1\SPIM:BSPIM:state_2\\SPIM:BSPIM:state_2\/q\SPIM:BSPIM:mosi_hs_reg\/main_011.076
macrocell17U(3,3)1\SPIM:BSPIM:mosi_hs_reg\SETUP3.510
Clock Skew0.000
+
\SPIM:BSPIM:sR8:Dp:u0\/so_comb\SPIM:BSPIM:mosi_hs_reg\/main_363.605 MHz15.722484.278
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
datapathcell1U(2,4)1\SPIM:BSPIM:sR8:Dp:u0\\SPIM:BSPIM:sR8:Dp:u0\/clock\SPIM:BSPIM:sR8:Dp:u0\/so_comb8.300
Route 1\SPIM:BSPIM:mosi_from_dp\\SPIM:BSPIM:sR8:Dp:u0\/so_comb\SPIM:BSPIM:mosi_hs_reg\/main_33.912
macrocell17U(3,3)1\SPIM:BSPIM:mosi_hs_reg\SETUP3.510
Clock Skew0.000
+
+
+
+
+
+
+
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SourceDestinationSlack (ns)Violation
\UART_1:BUART:tx_state_1\/q\UART_1:BUART:tx_state_1\/main_03.482
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell33U(3,0)1\UART_1:BUART:tx_state_1\\UART_1:BUART:tx_state_1\/clock_0\UART_1:BUART:tx_state_1\/q1.250
macrocell33U(3,0)1\UART_1:BUART:tx_state_1\\UART_1:BUART:tx_state_1\/q\UART_1:BUART:tx_state_1\/main_02.232
macrocell33U(3,0)1\UART_1:BUART:tx_state_1\ HOLD0.000
Clock Skew0.000
+
\UART_1:BUART:txn\/q\UART_1:BUART:txn\/main_03.544
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell37U(3,3)1\UART_1:BUART:txn\\UART_1:BUART:txn\/clock_0\UART_1:BUART:txn\/q1.250
macrocell37U(3,3)1\UART_1:BUART:txn\\UART_1:BUART:txn\/q\UART_1:BUART:txn\/main_02.294
macrocell37U(3,3)1\UART_1:BUART:txn\ HOLD0.000
Clock Skew0.000
+
\UART_1:BUART:tx_state_2\/q\UART_1:BUART:tx_state_2\/main_24.205
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell34U(3,3)1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/clock_0\UART_1:BUART:tx_state_2\/q1.250
macrocell34U(3,3)1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/q\UART_1:BUART:tx_state_2\/main_22.955
macrocell34U(3,3)1\UART_1:BUART:tx_state_2\ HOLD0.000
Clock Skew0.000
+
\UART_1:BUART:tx_state_2\/q\UART_1:BUART:txn\/main_44.205
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell34U(3,3)1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/clock_0\UART_1:BUART:tx_state_2\/q1.250
Route1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/q\UART_1:BUART:txn\/main_42.955
macrocell37U(3,3)1\UART_1:BUART:txn\ HOLD0.000
Clock Skew0.000
+
\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:tx_state_2\/main_34.218
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell30U(2,3)1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/clock_0\UART_1:BUART:tx_bitclk\/q1.250
Route1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:tx_state_2\/main_32.968
macrocell34U(3,3)1\UART_1:BUART:tx_state_2\ HOLD0.000
Clock Skew0.000
+
\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:txn\/main_54.218
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell30U(2,3)1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/clock_0\UART_1:BUART:tx_bitclk\/q1.250
Route1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:txn\/main_52.968
macrocell37U(3,3)1\UART_1:BUART:txn\ HOLD0.000
Clock Skew0.000
+
\UART_1:BUART:tx_state_2\/q\UART_1:BUART:tx_state_0\/main_34.312
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell34U(3,3)1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/clock_0\UART_1:BUART:tx_state_2\/q1.250
Route1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/q\UART_1:BUART:tx_state_0\/main_33.062
macrocell32U(2,3)1\UART_1:BUART:tx_state_0\ HOLD0.000
Clock Skew0.000
+
\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:tx_state_0\/main_44.354
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell30U(2,3)1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/clock_0\UART_1:BUART:tx_bitclk\/q1.250
Route1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:tx_state_0\/main_43.104
macrocell32U(2,3)1\UART_1:BUART:tx_state_0\ HOLD0.000
Clock Skew0.000
+
\UART_1:BUART:tx_state_0\/q\UART_1:BUART:tx_state_2\/main_14.847
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell32U(2,3)1\UART_1:BUART:tx_state_0\\UART_1:BUART:tx_state_0\/clock_0\UART_1:BUART:tx_state_0\/q1.250
Route1\UART_1:BUART:tx_state_0\\UART_1:BUART:tx_state_0\/q\UART_1:BUART:tx_state_2\/main_13.597
macrocell34U(3,3)1\UART_1:BUART:tx_state_2\ HOLD0.000
Clock Skew0.000
+
\UART_1:BUART:tx_state_0\/q\UART_1:BUART:txn\/main_24.847
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell32U(2,3)1\UART_1:BUART:tx_state_0\\UART_1:BUART:tx_state_0\/clock_0\UART_1:BUART:tx_state_0\/q1.250
Route1\UART_1:BUART:tx_state_0\\UART_1:BUART:tx_state_0\/q\UART_1:BUART:txn\/main_23.597
macrocell37U(3,3)1\UART_1:BUART:txn\ HOLD0.000
Clock Skew0.000
+
+
+
+
+
+
+
+
@@ -2271,9 +3714,9 @@

Static Timing Analysis

- - - + + + @@ -2292,28 +3735,28 @@

Static Timing Analysis

- - + + - - - - + + + + - - + + - - - - + + + + - - + + - + @@ -2332,9 +3775,9 @@

Static Timing Analysis

- - - + + + @@ -2353,28 +3796,28 @@

Static Timing Analysis

- - + + - - - + + + - - - - + + + + - - + + - + @@ -2393,9 +3836,9 @@

Static Timing Analysis

- - - + + + @@ -2415,27 +3858,27 @@

Static Timing Analysis

- + - - - + + + - - - - + + + + - - + + - + @@ -2454,9 +3897,9 @@

Static Timing Analysis

- - - + + + @@ -2475,28 +3918,28 @@

Static Timing Analysis

- - + + - - - + + + - - - - + + + + - - + + - + @@ -2515,9 +3958,9 @@

Static Timing Analysis

- - - + + + @@ -2536,28 +3979,28 @@

Static Timing Analysis

- - + + - - - + + + - - + + - - - - + + + + - - + + - + @@ -2576,9 +4019,9 @@

Static Timing Analysis

- - - + + + @@ -2597,28 +4040,28 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - + @@ -2637,9 +4080,9 @@

Static Timing Analysis

- - - + + + @@ -2658,28 +4101,28 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - + @@ -2698,9 +4141,9 @@

Static Timing Analysis

- - - + + + @@ -2719,28 +4162,28 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - + @@ -2759,9 +4202,9 @@

Static Timing Analysis

- - - + + + @@ -2780,28 +4223,28 @@

Static Timing Analysis

- - + + - - - - + + + + - - + + - - - - + + + + - - + + - + @@ -2820,9 +4263,9 @@

Static Timing Analysis

- - - + + + @@ -2841,28 +4284,28 @@

Static Timing Analysis

- - + + - - - - + + + + - - - - + + + + - - + + - + @@ -2909,8 +4352,8 @@

Static Timing Analysis

- - + + @@ -2930,28 +4373,89 @@

Static Timing Analysis

- - + + - - - + + + - - + + - - - + + + - - + + - + + + + + + + + + + + + + + + +
\UART_1:BUART:tx_state_2\/q\UART_1:BUART:tx_state_2\/main_24.183\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb\Timer_1:TimerUDB:sT16:timerdp:u1\/ci3.210
macrocell29U(3,5)datapathcell2U(2,0) 1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/clock_0\UART_1:BUART:tx_state_2\/q1.250\Timer_1:TimerUDB:sT16:timerdp:u0\\Timer_1:TimerUDB:sT16:timerdp:u0\/clock\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb3.210
macrocell29U(3,5)Route 1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/q\UART_1:BUART:tx_state_2\/main_22.933\Timer_1:TimerUDB:sT16:timerdp:u0.co_msb__sig\\Timer_1:TimerUDB:sT16:timerdp:u0\/co_msb\Timer_1:TimerUDB:sT16:timerdp:u1\/ci0.000
macrocell29U(3,5)datapathcell3U(3,0) 1\UART_1:BUART:tx_state_2\\Timer_1:TimerUDB:sT16:timerdp:u1\ HOLD 0.000
\UART_1:BUART:tx_state_2\/q\UART_1:BUART:txn\/main_44.183\Timer_1:TimerUDB:run_mode\/q\Timer_1:TimerUDB:timer_enable\/main_23.487
macrocell29U(3,5)macrocell25U(2,0) 1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/clock_0\UART_1:BUART:tx_state_2\/q\Timer_1:TimerUDB:run_mode\\Timer_1:TimerUDB:run_mode\/clock_0\Timer_1:TimerUDB:run_mode\/q 1.250
Route 1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/q\UART_1:BUART:txn\/main_42.933\Timer_1:TimerUDB:run_mode\\Timer_1:TimerUDB:run_mode\/q\Timer_1:TimerUDB:timer_enable\/main_22.237
macrocell32U(3,5)macrocell27U(2,0) 1\UART_1:BUART:txn\\Timer_1:TimerUDB:timer_enable\ HOLD 0.000
\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:tx_state_2\/main_34.218\Timer_1:TimerUDB:run_mode\/q\Timer_1:TimerUDB:trig_disable\/main_13.487
macrocell25U(2,5)U(2,0) 1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/clock_0\UART_1:BUART:tx_bitclk\/q\Timer_1:TimerUDB:run_mode\\Timer_1:TimerUDB:run_mode\/clock_0\Timer_1:TimerUDB:run_mode\/q 1.250
Route 1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:tx_state_2\/main_32.968\Timer_1:TimerUDB:run_mode\\Timer_1:TimerUDB:run_mode\/q\Timer_1:TimerUDB:trig_disable\/main_12.237
macrocell29U(3,5)macrocell28U(2,0) 1\UART_1:BUART:tx_state_2\\Timer_1:TimerUDB:trig_disable\ HOLD 0.000
\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:txn\/main_54.218\Timer_1:TimerUDB:trig_disable\/q\Timer_1:TimerUDB:timer_enable\/main_43.490
macrocell25U(2,5)macrocell28U(2,0) 1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/clock_0\UART_1:BUART:tx_bitclk\/q\Timer_1:TimerUDB:trig_disable\\Timer_1:TimerUDB:trig_disable\/clock_0\Timer_1:TimerUDB:trig_disable\/q 1.250
Route 1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:txn\/main_52.968\Timer_1:TimerUDB:trig_disable\\Timer_1:TimerUDB:trig_disable\/q\Timer_1:TimerUDB:timer_enable\/main_42.240
macrocell32U(3,5)macrocell27U(2,0) 1\UART_1:BUART:txn\\Timer_1:TimerUDB:timer_enable\ HOLD 0.000
\UART_1:BUART:tx_state_2\/q\UART_1:BUART:tx_state_0\/main_34.315\Timer_1:TimerUDB:trig_disable\/q\Timer_1:TimerUDB:trig_disable\/main_33.490
macrocell29U(3,5)macrocell28U(2,0) 1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/clock_0\UART_1:BUART:tx_state_2\/q\Timer_1:TimerUDB:trig_disable\\Timer_1:TimerUDB:trig_disable\/clock_0\Timer_1:TimerUDB:trig_disable\/q 1.250
Routemacrocell28U(2,0) 1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/q\UART_1:BUART:tx_state_0\/main_33.065\Timer_1:TimerUDB:trig_disable\\Timer_1:TimerUDB:trig_disable\/q\Timer_1:TimerUDB:trig_disable\/main_32.240
macrocell27U(2,5)macrocell28U(2,0) 1\UART_1:BUART:tx_state_0\\Timer_1:TimerUDB:trig_disable\ HOLD 0.000
\UART_1:BUART:tx_state_2\/q\UART_1:BUART:tx_state_1\/main_24.315ClockBlock_1k__SYNC/out\Timer_1:TimerUDB:sT16:timerdp:u1\/clk_en3.677
macrocell29U(3,5)synccellU(3,0) 1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/clock_0\UART_1:BUART:tx_state_2\/q1.250ClockBlock_1k__SYNCClockBlock_1k__SYNC/clockClockBlock_1k__SYNC/out1.000
Route 1\UART_1:BUART:tx_state_2\\UART_1:BUART:tx_state_2\/q\UART_1:BUART:tx_state_1\/main_23.065ClockBlock_1k__SYNC_OUTClockBlock_1k__SYNC/out\Timer_1:TimerUDB:sT16:timerdp:u1\/clk_en2.677
macrocell28U(2,5)datapathcell3U(3,0) 1\UART_1:BUART:tx_state_1\\Timer_1:TimerUDB:sT16:timerdp:u1\ HOLD 0.000
\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:tx_state_0\/main_44.346ClockBlock_1k__SYNC/out\Timer_1:TimerUDB:nrstSts:stsreg\/clk_en3.700
macrocell25U(2,5)synccellU(3,0) 1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/clock_0\UART_1:BUART:tx_bitclk\/q1.250ClockBlock_1k__SYNCClockBlock_1k__SYNC/clockClockBlock_1k__SYNC/out1.000
Route 1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:tx_state_0\/main_43.096ClockBlock_1k__SYNC_OUTClockBlock_1k__SYNC/out\Timer_1:TimerUDB:nrstSts:stsreg\/clk_en2.700
macrocell27U(2,5)statusicell3U(2,0) 1\UART_1:BUART:tx_state_0\\Timer_1:TimerUDB:nrstSts:stsreg\ HOLD 0.000
\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:tx_state_1\/main_34.346ClockBlock_1k__SYNC/out\Timer_1:TimerUDB:run_mode\/clk_en3.700
macrocell25U(2,5)synccellU(3,0) 1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/clock_0\UART_1:BUART:tx_bitclk\/q1.250ClockBlock_1k__SYNCClockBlock_1k__SYNC/clockClockBlock_1k__SYNC/out1.000
Route 1\UART_1:BUART:tx_bitclk\\UART_1:BUART:tx_bitclk\/q\UART_1:BUART:tx_state_1\/main_33.096ClockBlock_1k__SYNC_OUTClockBlock_1k__SYNC/out\Timer_1:TimerUDB:run_mode\/clk_en2.700
macrocell28U(2,5)macrocell25U(2,0) 1\UART_1:BUART:tx_state_1\\Timer_1:TimerUDB:run_mode\ HOLD 0.000
\UART_1:BUART:txn\/q\UART_1:BUART:txn\/main_04.426ClockBlock_1k__SYNC/out\Timer_1:TimerUDB:sT16:timerdp:u0\/clk_en3.700
macrocell32U(3,5)synccellU(3,0) 1\UART_1:BUART:txn\\UART_1:BUART:txn\/clock_0\UART_1:BUART:txn\/q1.250ClockBlock_1k__SYNCClockBlock_1k__SYNC/clockClockBlock_1k__SYNC/out1.000
macrocell32U(3,5)Route 1\UART_1:BUART:txn\\UART_1:BUART:txn\/q\UART_1:BUART:txn\/main_03.176ClockBlock_1k__SYNC_OUTClockBlock_1k__SYNC/out\Timer_1:TimerUDB:sT16:timerdp:u0\/clk_en2.700
macrocell32U(3,5)datapathcell2U(2,0) 1\UART_1:BUART:txn\\Timer_1:TimerUDB:sT16:timerdp:u0\ HOLD 0.000
\UART_1:BUART:tx_state_1\/q\UART_1:BUART:tx_state_2\/main_05.011ClockBlock_1k__SYNC/out\Timer_1:TimerUDB:timer_enable\/clk_en3.700
macrocell28U(2,5)synccellU(3,0) 1\UART_1:BUART:tx_state_1\\UART_1:BUART:tx_state_1\/clock_0\UART_1:BUART:tx_state_1\/q1.250ClockBlock_1k__SYNCClockBlock_1k__SYNC/clockClockBlock_1k__SYNC/out1.000
Route 1\UART_1:BUART:tx_state_1\\UART_1:BUART:tx_state_1\/q\UART_1:BUART:tx_state_2\/main_03.761ClockBlock_1k__SYNC_OUTClockBlock_1k__SYNC/out\Timer_1:TimerUDB:timer_enable\/clk_en2.700
macrocell29U(3,5)macrocell27U(2,0) 1\UART_1:BUART:tx_state_2\\Timer_1:TimerUDB:timer_enable\ HOLD 0.000
\SPIM:BSPIM:cnt_enable\/q\SPIM:BSPIM:cnt_enable\/main_9\SPIM:BSPIM:mosi_pre_reg\/q\SPIM:BSPIM:mosi_pre_reg\/main_9 3.539
macrocell9U(2,3)macrocell18U(2,4) 1\SPIM:BSPIM:cnt_enable\\SPIM:BSPIM:cnt_enable\/clock_0\SPIM:BSPIM:cnt_enable\/q\SPIM:BSPIM:mosi_pre_reg\\SPIM:BSPIM:mosi_pre_reg\/clock_0\SPIM:BSPIM:mosi_pre_reg\/q 1.250
macrocell9U(2,3)macrocell18U(2,4) 1\SPIM:BSPIM:cnt_enable\\SPIM:BSPIM:cnt_enable\/q\SPIM:BSPIM:cnt_enable\/main_9\SPIM:BSPIM:mosi_pre_reg\\SPIM:BSPIM:mosi_pre_reg\/q\SPIM:BSPIM:mosi_pre_reg\/main_9 2.289
macrocell9U(2,3)macrocell18U(2,4) 1\SPIM:BSPIM:cnt_enable\\SPIM:BSPIM:mosi_pre_reg\ HOLD0.000
Clock Skew0.000
+ + + + \SPIM:BSPIM:load_cond\/q + \SPIM:BSPIM:load_cond\/main_8 + 3.547 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -2972,7 +4476,7 @@

Static Timing Analysis

- + @@ -2991,7 +4495,7 @@

Static Timing Analysis

- + @@ -3000,16 +4504,16 @@

Static Timing Analysis

- + - + - + @@ -3033,7 +4537,7 @@

Static Timing Analysis

- + @@ -3052,7 +4556,7 @@

Static Timing Analysis

- + @@ -3067,10 +4571,10 @@

Static Timing Analysis

- + - + @@ -3092,9 +4596,9 @@

Static Timing Analysis

- - - + + + @@ -3113,28 +4617,28 @@

Static Timing Analysis

- - + + - - - + + + - - + + - - - - + + + + - - + + - + @@ -3175,7 +4679,7 @@

Static Timing Analysis

- + @@ -3184,7 +4688,7 @@

Static Timing Analysis

- + @@ -3193,7 +4697,7 @@

Static Timing Analysis

- + @@ -3214,9 +4718,9 @@

Static Timing Analysis

- - - + + + @@ -3235,28 +4739,28 @@

Static Timing Analysis

- - + + - - - + + + - - + + - - - - + + + + - - + + - + @@ -3277,7 +4781,7 @@

Static Timing Analysis

- + @@ -3296,8 +4800,8 @@

Static Timing Analysis

- - + + @@ -3311,7 +4815,7 @@

Static Timing Analysis

- + @@ -3338,7 +4842,7 @@

Static Timing Analysis

- + @@ -3357,7 +4861,7 @@

Static Timing Analysis

- + @@ -3372,11 +4876,11 @@

Static Timing Analysis

- + - - + + @@ -3397,70 +4901,9 @@

Static Timing Analysis

- - - - - - - - - - - - + + + @@ -3479,28 +4922,28 @@

Static Timing Analysis

- - + + - - - + + + - - + + - - - - + + + + - - + + - + @@ -3552,7 +4995,7 @@

Static Timing Analysis

- + - + @@ -3594,7 +5037,7 @@

Static Timing Analysis

- + @@ -3648,7 +5091,7 @@

Static Timing Analysis

- + - - + + @@ -3681,7 +5124,7 @@

Static Timing Analysis

- + @@ -3699,10 +5142,10 @@

Static Timing Analysis

- + - + @@ -3752,9 +5195,9 @@

Static Timing Analysis

- - - + + + - + - + - - - - + + + + - - + + - - - + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell14U(2,5)1\SPIM:BSPIM:load_cond\\SPIM:BSPIM:load_cond\/clock_0\SPIM:BSPIM:load_cond\/q1.250
macrocell14U(2,5)1\SPIM:BSPIM:load_cond\\SPIM:BSPIM:load_cond\/q\SPIM:BSPIM:load_cond\/main_82.297
macrocell14U(2,5)1\SPIM:BSPIM:load_cond\ HOLD 0.000
\SPIM:BSPIM:is_spi_done\/q \SPIM:BSPIM:is_spi_done\/main_93.5603.554
macrocell11macrocell12 U(2,4) 1 \SPIM:BSPIM:is_spi_done\ 1.250
macrocell11macrocell12 U(2,4) 1 \SPIM:BSPIM:is_spi_done\ \SPIM:BSPIM:is_spi_done\/q \SPIM:BSPIM:is_spi_done\/main_92.3102.304
macrocell11macrocell12 U(2,4) 1 \SPIM:BSPIM:is_spi_done\
\SPIM:BSPIM:is_spi_done\/q \SPIM:BSPIM:state_2\/main_93.5603.554
macrocell11macrocell12 U(2,4) 1 \SPIM:BSPIM:is_spi_done\ \SPIM:BSPIM:is_spi_done\ \SPIM:BSPIM:is_spi_done\/q \SPIM:BSPIM:state_2\/main_92.3102.304
macrocell21macrocell22 U(2,4) 1 \SPIM:BSPIM:state_2\
\SPIM:BSPIM:mosi_pre_reg\/q\SPIM:BSPIM:mosi_pre_reg\/main_93.571\SPIM:BSPIM:ld_ident\/q\SPIM:BSPIM:ld_ident\/main_33.559
macrocell17U(2,4)macrocell13U(2,5) 1\SPIM:BSPIM:mosi_pre_reg\\SPIM:BSPIM:mosi_pre_reg\/clock_0\SPIM:BSPIM:mosi_pre_reg\/q\SPIM:BSPIM:ld_ident\\SPIM:BSPIM:ld_ident\/clock_0\SPIM:BSPIM:ld_ident\/q 1.250
macrocell17U(2,4)macrocell13U(2,5) 1\SPIM:BSPIM:mosi_pre_reg\\SPIM:BSPIM:mosi_pre_reg\/q\SPIM:BSPIM:mosi_pre_reg\/main_92.321\SPIM:BSPIM:ld_ident\\SPIM:BSPIM:ld_ident\/q\SPIM:BSPIM:ld_ident\/main_32.309
macrocell17U(2,4)macrocell13U(2,5) 1\SPIM:BSPIM:mosi_pre_reg\\SPIM:BSPIM:ld_ident\ HOLD 0.000
macrocell7U(3,3)U(3,5) 1 Net_439 Net_439/clock_0
macrocell7U(3,3)U(3,5) 1 Net_439 Net_439/q
macrocell7U(3,3)U(3,5) 1 Net_439
\SPIM:BSPIM:ld_ident\/q\SPIM:BSPIM:ld_ident\/main_33.876\SPIM:BSPIM:cnt_enable\/q\SPIM:BSPIM:cnt_enable\/main_93.888
macrocell12U(3,3)macrocell10U(2,5) 1\SPIM:BSPIM:ld_ident\\SPIM:BSPIM:ld_ident\/clock_0\SPIM:BSPIM:ld_ident\/q\SPIM:BSPIM:cnt_enable\\SPIM:BSPIM:cnt_enable\/clock_0\SPIM:BSPIM:cnt_enable\/q 1.250
macrocell12U(3,3)macrocell10U(2,5) 1\SPIM:BSPIM:ld_ident\\SPIM:BSPIM:ld_ident\/q\SPIM:BSPIM:ld_ident\/main_32.626\SPIM:BSPIM:cnt_enable\\SPIM:BSPIM:cnt_enable\/q\SPIM:BSPIM:cnt_enable\/main_92.638
macrocell12U(3,3)macrocell10U(2,5) 1\SPIM:BSPIM:ld_ident\\SPIM:BSPIM:cnt_enable\ HOLD 0.000
\SPIM:BSPIM:load_rx_data\/q \SPIM:BSPIM:sR8:Dp:u0\/f1_load4.1634.146
macrocell14U(2,3)macrocell15U(2,5) 1 \SPIM:BSPIM:load_rx_data\ \SPIM:BSPIM:load_rx_data\/clock_0 \SPIM:BSPIM:load_rx_data\ \SPIM:BSPIM:load_rx_data\/q \SPIM:BSPIM:sR8:Dp:u0\/f1_load2.9132.896
datapathcell1
\SPIM:BSPIM:mosi_from_dp_reg\/q \SPIM:BSPIM:mosi_hs_reg\/main_54.1734.160
macrocell15macrocell16 U(3,4) 1 \SPIM:BSPIM:mosi_from_dp_reg\ \SPIM:BSPIM:mosi_from_dp_reg\ \SPIM:BSPIM:mosi_from_dp_reg\/q \SPIM:BSPIM:mosi_hs_reg\/main_52.9232.910
macrocell16U(3,5)macrocell17U(3,3) 1 \SPIM:BSPIM:mosi_hs_reg\
\SPIM:BSPIM:state_1\/qNet_479/main_24.198
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell20U(2,3)1\SPIM:BSPIM:state_1\\SPIM:BSPIM:state_1\/clock_0\SPIM:BSPIM:state_1\/q1.250
Route1\SPIM:BSPIM:state_1\\SPIM:BSPIM:state_1\/qNet_479/main_22.948
macrocell8U(2,3)1Net_479 HOLD0.000
Clock Skew0.000
-
\SPIM:BSPIM:state_1\/q\SPIM:BSPIM:load_cond\/main_14.198\SPIM:BSPIM:mosi_hs_reg\/q\SPIM:BSPIM:mosi_hs_reg\/main_44.445
macrocell20U(2,3)macrocell17U(3,3) 1\SPIM:BSPIM:state_1\\SPIM:BSPIM:state_1\/clock_0\SPIM:BSPIM:state_1\/q\SPIM:BSPIM:mosi_hs_reg\\SPIM:BSPIM:mosi_hs_reg\/clock_0\SPIM:BSPIM:mosi_hs_reg\/q 1.250
Routemacrocell17U(3,3) 1\SPIM:BSPIM:state_1\\SPIM:BSPIM:state_1\/q\SPIM:BSPIM:load_cond\/main_12.948\SPIM:BSPIM:mosi_hs_reg\\SPIM:BSPIM:mosi_hs_reg\/q\SPIM:BSPIM:mosi_hs_reg\/main_43.195
macrocell13U(2,3)macrocell17U(3,3) 1\SPIM:BSPIM:load_cond\\SPIM:BSPIM:mosi_hs_reg\ HOLD 0.000
m_miso_pin(0)_PAD \SPIM:BSPIM:sR8:Dp:u0\/route_si41.67741.678
@@ -3579,7 +5022,7 @@

Static Timing Analysis

0.000
iocell13iocell14 P0[0] 1 m_miso_pin(0) Net_20 m_miso_pin(0)/fb \SPIM:BSPIM:sR8:Dp:u0\/route_si7.1877.188
datapathcell1
\UART_1:BUART:txn\/q Tx_1(0)_PAD33.32431.436
@@ -3666,8 +5109,8 @@

Static Timing Analysis

macrocell32U(3,5)macrocell37U(3,3) 1 \UART_1:BUART:txn\ \UART_1:BUART:txn\/clock_0 \UART_1:BUART:txn\ \UART_1:BUART:txn\/q Net_234/main_04.5213.195
macrocell1 Net_234 Net_234/q Tx_1(0)/pin_input6.3595.797
iocell5iocell6 P3[7] 1 Tx_1(0)
\SS:Async:ctrl_reg\/control_1Pin_2(0)_PAD33.212\SS:Async:ctrl_reg\/control_2Pin_3(0)_PAD32.395
@@ -3773,56 +5216,143 @@

Static Timing Analysis

controlcell1U(3,3)U(3,5) 1 \SS:Async:ctrl_reg\ \SS:Async:ctrl_reg\/busclk\SS:Async:ctrl_reg\/control_1\SS:Async:ctrl_reg\/control_2 2.580
Route 1mywire_1_1\SS:Async:ctrl_reg\/control_1Net_422/main_12.791mywire_1_2\SS:Async:ctrl_reg\/control_2Net_428/main_12.792
macrocell4U(3,3)macrocell6U(3,5) 1Net_422Net_422/main_1Net_422/qNet_428Net_428/main_1Net_428/q 3.350
Route 1Net_422Net_422/qPin_2(0)/pin_input7.423Net_428Net_428/qPin_3(0)/pin_input6.361
iocell3P3[2]1Pin_3(0)Pin_3(0)/pin_inputPin_3(0)/pad_out17.312
Route1Pin_3(0)_PADPin_3(0)/pad_outPin_3(0)_PAD0.000
Clock Clock path delay0.000
+ + + + \SS:Async:ctrl_reg\/control_0 + Pin_1(0)_PAD + 32.006 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - - - + + + + - - - + + + @@ -3839,9 +5369,9 @@

Static Timing Analysis

- - - + + + - + - + - - - - + + + + - - + + - - - + + + - - - - + + + + - - + + - - - - + + + + - - - + + + @@ -3926,9 +5456,9 @@

Static Timing Analysis

- - - + + + - + - + - - - - + + + + - - + + - - - + + + - - - - + + + + - - + + - - - - + + + + - - - + + + @@ -4013,9 +5543,9 @@

Static Timing Analysis

- + - + - + - + - - + + - + - + @@ -4066,7 +5596,7 @@

Static Timing Analysis

- + @@ -4121,7 +5651,7 @@

Static Timing Analysis

- + - - + + @@ -4154,11 +5684,11 @@

Static Timing Analysis

- + - + @@ -4172,10 +5702,10 @@

Static Timing Analysis

- + - + @@ -4207,8 +5737,8 @@

Static Timing Analysis

- - + + - + @@ -4240,43 +5770,43 @@

Static Timing Analysis

- + - - + + - - - + + + - - - - + + + + - - + + - - - - + + + + - - - + + + @@ -4295,7 +5825,7 @@

Static Timing Analysis

- + - + @@ -4332,7 +5862,7 @@

Static Timing Analysis

- + @@ -4346,7 +5876,7 @@

Static Timing Analysis

- + @@ -4381,8 +5911,8 @@

Static Timing Analysis

- - + + - + @@ -4414,43 +5944,130 @@

Static Timing Analysis

- + - - + + - - - + + + - - - - + + + + - - + + - - - - + + + + - - - + + + + + + + + + + + + + + + +
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
controlcell1U(3,5)1\SS:Async:ctrl_reg\\SS:Async:ctrl_reg\/busclk\SS:Async:ctrl_reg\/control_02.580
Route1mywire_1_0\SS:Async:ctrl_reg\/control_0Net_419/main_32.809
macrocell3U(3,5)1Net_419Net_419/main_3Net_419/q3.350
Route1Net_419Net_419/qPin_1(0)/pin_input6.356
iocell2P3[1]iocell1P3[0] 1Pin_2(0)Pin_2(0)/pin_inputPin_2(0)/pad_out17.068Pin_1(0)Pin_1(0)/pin_inputPin_1(0)/pad_out16.911
Route 1Pin_2(0)_PADPin_2(0)/pad_outPin_2(0)_PADPin_1(0)_PADPin_1(0)/pad_outPin_1(0)_PAD 0.000
\SS:Async:ctrl_reg\/control_1Pin_1(0)_PAD33.047\SS:Async:ctrl_reg\/control_2Pin_5(0)_PAD31.882
@@ -3860,56 +5390,56 @@

Static Timing Analysis

controlcell1U(3,3)U(3,5) 1 \SS:Async:ctrl_reg\ \SS:Async:ctrl_reg\/busclk\SS:Async:ctrl_reg\/control_1\SS:Async:ctrl_reg\/control_2 2.580
Route 1mywire_1_1\SS:Async:ctrl_reg\/control_1Net_419/main_12.795mywire_1_2\SS:Async:ctrl_reg\/control_2Net_585/main_12.792
macrocell3U(3,3)macrocell9U(3,5) 1Net_419Net_419/main_1Net_419/qNet_585Net_585/main_1Net_585/q 3.350
Route 1Net_419Net_419/qPin_1(0)/pin_input7.411Net_585Net_585/qPin_5(0)/pin_input6.321
iocell1P3[0]iocell5P3[4] 1Pin_1(0)Pin_1(0)/pin_inputPin_1(0)/pad_out16.911Pin_5(0)Pin_5(0)/pin_inputPin_5(0)/pad_out16.839
Route 1Pin_1(0)_PADPin_1(0)/pad_outPin_1(0)_PADPin_5(0)_PADPin_5(0)/pad_outPin_5(0)_PAD 0.000
\SS:Async:ctrl_reg\/control_1Pin_3(0)_PAD32.781\SS:Async:ctrl_reg\/control_2Pin_2(0)_PAD31.296
@@ -3947,56 +5477,56 @@

Static Timing Analysis

controlcell1U(3,3)U(3,5) 1 \SS:Async:ctrl_reg\ \SS:Async:ctrl_reg\/busclk\SS:Async:ctrl_reg\/control_1\SS:Async:ctrl_reg\/control_2 2.580
Route 1mywire_1_1\SS:Async:ctrl_reg\/control_1Net_428/main_12.791mywire_1_2\SS:Async:ctrl_reg\/control_2Net_422/main_12.792
macrocell6U(3,3)macrocell4U(3,5) 1Net_428Net_428/main_1Net_428/qNet_422Net_422/main_1Net_422/q 3.350
Route 1Net_428Net_428/qPin_3(0)/pin_input6.748Net_422Net_422/qPin_2(0)/pin_input5.506
iocell3P3[2]iocell2P3[1] 1Pin_3(0)Pin_3(0)/pin_inputPin_3(0)/pad_out17.312Pin_2(0)Pin_2(0)/pin_inputPin_2(0)/pad_out17.068
Route 1Pin_3(0)_PADPin_3(0)/pad_outPin_3(0)_PADPin_2(0)_PADPin_2(0)/pad_outPin_2(0)_PAD 0.000
\SS:Async:ctrl_reg\/control_1\SS:Async:ctrl_reg\/control_2 Pin_4(0)_PAD31.44031.158
@@ -4034,25 +5564,25 @@

Static Timing Analysis

controlcell1U(3,3)U(3,5) 1 \SS:Async:ctrl_reg\ \SS:Async:ctrl_reg\/busclk\SS:Async:ctrl_reg\/control_1\SS:Async:ctrl_reg\/control_2 2.580
Route 1mywire_1_1\SS:Async:ctrl_reg\/control_1mywire_1_2\SS:Async:ctrl_reg\/control_2 Net_425/main_12.7912.792
macrocell5U(3,3)U(3,5) 1 Net_425 Net_425/main_1 Net_425 Net_425/q Pin_4(0)/pin_input6.6136.330
iocell4
\SPIM:BSPIM:mosi_hs_reg\/q m_mosi_pin(0)_PAD36.07435.028
@@ -4139,8 +5669,8 @@

Static Timing Analysis

macrocell16U(3,5)macrocell17U(3,3) 1 \SPIM:BSPIM:mosi_hs_reg\ \SPIM:BSPIM:mosi_hs_reg\/clock_0 \SPIM:BSPIM:mosi_hs_reg\ \SPIM:BSPIM:mosi_hs_reg\/q Net_30/main_15.2575.244
macrocell2U(3,3)U(3,5) 1 Net_30 Net_30/main_1 Net_30 Net_30/q m_mosi_pin(0)/pin_input8.2467.213
iocell14iocell15 P0[5] 1 m_mosi_pin(0)
Net_439/qPin_2(0)_PAD31.687Pin_3(0)_PAD30.869
@@ -4227,7 +5757,7 @@

Static Timing Analysis

macrocell7U(3,3)U(3,5) 1 Net_439 Net_439/clock_0 1 Net_439 Net_439/qNet_422/main_0Net_428/main_0 2.596
macrocell4U(3,3)macrocell6U(3,5) 1Net_422Net_422/main_0Net_422/qNet_428Net_428/main_0Net_428/q 3.350
Route 1Net_422Net_422/qPin_2(0)/pin_input7.423Net_428Net_428/qPin_3(0)/pin_input6.361
iocell2P3[1]iocell3P3[2] 1Pin_2(0)Pin_2(0)/pin_inputPin_2(0)/pad_out17.068Pin_3(0)Pin_3(0)/pin_inputPin_3(0)/pad_out17.312
Route 1Pin_2(0)_PADPin_2(0)/pad_outPin_2(0)_PADPin_3(0)_PADPin_3(0)/pad_outPin_3(0)_PAD 0.000
Net_439/q Pin_1(0)_PAD31.51230.457
@@ -4314,7 +5844,7 @@

Static Timing Analysis

macrocell7U(3,3)U(3,5) 1 Net_439 Net_439/clock_0
macrocell3U(3,3)U(3,5) 1 Net_419 Net_419/main_0 Net_419 Net_419/q Pin_1(0)/pin_input7.4116.356
iocell1
Net_439/qPin_3(0)_PAD31.256Pin_5(0)_PAD30.356
@@ -4401,7 +5931,7 @@

Static Timing Analysis

macrocell7U(3,3)U(3,5) 1 Net_439 Net_439/clock_0 1 Net_439 Net_439/qNet_428/main_0Net_585/main_0 2.596
macrocell6U(3,3)macrocell9U(3,5) 1Net_428Net_428/main_0Net_428/qNet_585Net_585/main_0Net_585/q 3.350
Route 1Net_428Net_428/qPin_3(0)/pin_input6.748Net_585Net_585/qPin_5(0)/pin_input6.321
iocell3P3[2]iocell5P3[4] 1Pin_3(0)Pin_3(0)/pin_inputPin_3(0)/pad_out17.312Pin_5(0)Pin_5(0)/pin_inputPin_5(0)/pad_out16.839
Route 1Pin_3(0)_PADPin_3(0)/pad_outPin_3(0)_PADPin_5(0)_PADPin_5(0)/pad_outPin_5(0)_PAD0.000
Clock Clock path delay0.000
+ + + + Net_439/q + Pin_2(0)_PAD + 29.770 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -4469,7 +6086,7 @@

Static Timing Analysis

- + - + @@ -4506,7 +6123,7 @@

Static Timing Analysis

- + @@ -4520,7 +6137,7 @@

Static Timing Analysis

- + @@ -4556,7 +6173,7 @@

Static Timing Analysis

- + - + @@ -4589,10 +6206,10 @@

Static Timing Analysis

- + - + diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_u.sdc b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_u.sdc index 928c5c6..7abfd7d 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_u.sdc +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSOC5_SPI_LSM303D_u.sdc @@ -1,3 +1,3 @@ -# Component constraints for C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\TopDesign\TopDesign.cysch -# Project: C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj -# Date: Fri, 22 Mar 2013 09:33:23 GMT +# Component constraints for C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\TopDesign\TopDesign.cysch +# Project: C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cyprj +# Date: Thu, 25 Jul 2013 14:48:52 GMT diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSoC5_Panther_100-TQFP.xml b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSoC5_Panther_100-TQFP.xml index cd7f928..3d5e4cc 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSoC5_Panther_100-TQFP.xml +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/PSoC5_Panther_100-TQFP.xml @@ -1,7 +1,6 @@ - @@ -45,6 +44,8 @@ + + diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_1.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_1.c index 6b2c354..2754a77 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_1.c +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_1.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_1.c -* Version 1.80 +* Version 1.90 * * Description: * This file contains API to enable firmware control of a Pins component. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_1.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_1.h index d8a146a..4170174 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_1.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_1.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_1.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines @@ -25,7 +25,7 @@ /* Check to see if required defines such as CY_PSOC5A are available */ /* They are defined starting with cy_boot v3.0 */ #if !defined (CY_PSOC5A) - #error Component cy_pins_v1_80 requires cy_boot v3.0 or later + #error Component cy_pins_v1_90 requires cy_boot v3.0 or later #endif /* (CY_PSOC5A) */ /* APIs are not generated for P15[7:6] */ diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_1_aliases.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_1_aliases.h index b404d4a..13cc3b1 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_1_aliases.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_1_aliases.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_1.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_2.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_2.c index 1f4385a..e8c68c4 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_2.c +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_2.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_2.c -* Version 1.80 +* Version 1.90 * * Description: * This file contains API to enable firmware control of a Pins component. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_2.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_2.h index b74bf90..4e73fa8 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_2.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_2.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_2.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines @@ -25,7 +25,7 @@ /* Check to see if required defines such as CY_PSOC5A are available */ /* They are defined starting with cy_boot v3.0 */ #if !defined (CY_PSOC5A) - #error Component cy_pins_v1_80 requires cy_boot v3.0 or later + #error Component cy_pins_v1_90 requires cy_boot v3.0 or later #endif /* (CY_PSOC5A) */ /* APIs are not generated for P15[7:6] */ diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_2_aliases.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_2_aliases.h index d6d8eba..ef19a3a 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_2_aliases.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_2_aliases.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_2.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_3.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_3.c index 4237a34..412803c 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_3.c +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_3.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_3.c -* Version 1.80 +* Version 1.90 * * Description: * This file contains API to enable firmware control of a Pins component. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_3.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_3.h index 5268493..6b112e5 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_3.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_3.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_3.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines @@ -25,7 +25,7 @@ /* Check to see if required defines such as CY_PSOC5A are available */ /* They are defined starting with cy_boot v3.0 */ #if !defined (CY_PSOC5A) - #error Component cy_pins_v1_80 requires cy_boot v3.0 or later + #error Component cy_pins_v1_90 requires cy_boot v3.0 or later #endif /* (CY_PSOC5A) */ /* APIs are not generated for P15[7:6] */ diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_3_aliases.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_3_aliases.h index d3dcdea..fb8bc2d 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_3_aliases.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_3_aliases.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_3.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_4.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_4.c index 3bb6dd5..702a703 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_4.c +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_4.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_4.c -* Version 1.80 +* Version 1.90 * * Description: * This file contains API to enable firmware control of a Pins component. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_4.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_4.h index 3387667..cded03b 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_4.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_4.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_4.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines @@ -25,7 +25,7 @@ /* Check to see if required defines such as CY_PSOC5A are available */ /* They are defined starting with cy_boot v3.0 */ #if !defined (CY_PSOC5A) - #error Component cy_pins_v1_80 requires cy_boot v3.0 or later + #error Component cy_pins_v1_90 requires cy_boot v3.0 or later #endif /* (CY_PSOC5A) */ /* APIs are not generated for P15[7:6] */ diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_4_aliases.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_4_aliases.h index 08f796a..4f0894e 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_4_aliases.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_4_aliases.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: Pin_4.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_5.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_5.c new file mode 100644 index 0000000..ee180d0 --- /dev/null +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_5.c @@ -0,0 +1,137 @@ +/******************************************************************************* +* File Name: Pin_5.c +* Version 1.90 +* +* Description: +* This file contains API to enable firmware control of a Pins component. +* +* Note: +* +******************************************************************************** +* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* You may use this file only in accordance with the license, terms, conditions, +* disclaimers, and limitations in the end user license agreement accompanying +* the software package with which this file was provided. +*******************************************************************************/ + +#include "cytypes.h" +#include "Pin_5.h" + +/* APIs are not generated for P15[7:6] on PSoC 5 */ +#if !(CY_PSOC5A &&\ + Pin_5__PORT == 15 && ((Pin_5__MASK & 0xC0) != 0)) + + +/******************************************************************************* +* Function Name: Pin_5_Write +******************************************************************************** +* +* Summary: +* Assign a new value to the digital port's data output register. +* +* Parameters: +* prtValue: The value to be assigned to the Digital Port. +* +* Return: +* None +* +*******************************************************************************/ +void Pin_5_Write(uint8 value) +{ + uint8 staticBits = (Pin_5_DR & (uint8)(~Pin_5_MASK)); + Pin_5_DR = staticBits | ((uint8)(value << Pin_5_SHIFT) & Pin_5_MASK); +} + + +/******************************************************************************* +* Function Name: Pin_5_SetDriveMode +******************************************************************************** +* +* Summary: +* Change the drive mode on the pins of the port. +* +* Parameters: +* mode: Change the pins to this drive mode. +* +* Return: +* None +* +*******************************************************************************/ +void Pin_5_SetDriveMode(uint8 mode) +{ + CyPins_SetPinDriveMode(Pin_5_0, mode); +} + + +/******************************************************************************* +* Function Name: Pin_5_Read +******************************************************************************** +* +* Summary: +* Read the current value on the pins of the Digital Port in right justified +* form. +* +* Parameters: +* None +* +* Return: +* Returns the current value of the Digital Port as a right justified number +* +* Note: +* Macro Pin_5_ReadPS calls this function. +* +*******************************************************************************/ +uint8 Pin_5_Read(void) +{ + return (Pin_5_PS & Pin_5_MASK) >> Pin_5_SHIFT; +} + + +/******************************************************************************* +* Function Name: Pin_5_ReadDataReg +******************************************************************************** +* +* Summary: +* Read the current value assigned to a Digital Port's data output register +* +* Parameters: +* None +* +* Return: +* Returns the current value assigned to the Digital Port's data output register +* +*******************************************************************************/ +uint8 Pin_5_ReadDataReg(void) +{ + return (Pin_5_DR & Pin_5_MASK) >> Pin_5_SHIFT; +} + + +/* If Interrupts Are Enabled for this Pins component */ +#if defined(Pin_5_INTSTAT) + + /******************************************************************************* + * Function Name: Pin_5_ClearInterrupt + ******************************************************************************** + * Summary: + * Clears any active interrupts attached to port and returns the value of the + * interrupt status register. + * + * Parameters: + * None + * + * Return: + * Returns the value of the interrupt status register + * + *******************************************************************************/ + uint8 Pin_5_ClearInterrupt(void) + { + return (Pin_5_INTSTAT & Pin_5_MASK) >> Pin_5_SHIFT; + } + +#endif /* If Interrupts Are Enabled for this Pins component */ + +#endif /* CY_PSOC5A... */ + + +/* [] END OF FILE */ diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_5.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_5.h new file mode 100644 index 0000000..8bc2e01 --- /dev/null +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_5.h @@ -0,0 +1,130 @@ +/******************************************************************************* +* File Name: Pin_5.h +* Version 1.90 +* +* Description: +* This file containts Control Register function prototypes and register defines +* +* Note: +* +******************************************************************************** +* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* You may use this file only in accordance with the license, terms, conditions, +* disclaimers, and limitations in the end user license agreement accompanying +* the software package with which this file was provided. +*******************************************************************************/ + +#if !defined(CY_PINS_Pin_5_H) /* Pins Pin_5_H */ +#define CY_PINS_Pin_5_H + +#include "cytypes.h" +#include "cyfitter.h" +#include "cypins.h" +#include "Pin_5_aliases.h" + +/* Check to see if required defines such as CY_PSOC5A are available */ +/* They are defined starting with cy_boot v3.0 */ +#if !defined (CY_PSOC5A) + #error Component cy_pins_v1_90 requires cy_boot v3.0 or later +#endif /* (CY_PSOC5A) */ + +/* APIs are not generated for P15[7:6] */ +#if !(CY_PSOC5A &&\ + Pin_5__PORT == 15 && ((Pin_5__MASK & 0xC0) != 0)) + + +/*************************************** +* Function Prototypes +***************************************/ + +void Pin_5_Write(uint8 value) ; +void Pin_5_SetDriveMode(uint8 mode) ; +uint8 Pin_5_ReadDataReg(void) ; +uint8 Pin_5_Read(void) ; +uint8 Pin_5_ClearInterrupt(void) ; + + +/*************************************** +* API Constants +***************************************/ + +/* Drive Modes */ +#define Pin_5_DM_ALG_HIZ PIN_DM_ALG_HIZ +#define Pin_5_DM_DIG_HIZ PIN_DM_DIG_HIZ +#define Pin_5_DM_RES_UP PIN_DM_RES_UP +#define Pin_5_DM_RES_DWN PIN_DM_RES_DWN +#define Pin_5_DM_OD_LO PIN_DM_OD_LO +#define Pin_5_DM_OD_HI PIN_DM_OD_HI +#define Pin_5_DM_STRONG PIN_DM_STRONG +#define Pin_5_DM_RES_UPDWN PIN_DM_RES_UPDWN + +/* Digital Port Constants */ +#define Pin_5_MASK Pin_5__MASK +#define Pin_5_SHIFT Pin_5__SHIFT +#define Pin_5_WIDTH 1u + + +/*************************************** +* Registers +***************************************/ + +/* Main Port Registers */ +/* Pin State */ +#define Pin_5_PS (* (reg8 *) Pin_5__PS) +/* Data Register */ +#define Pin_5_DR (* (reg8 *) Pin_5__DR) +/* Port Number */ +#define Pin_5_PRT_NUM (* (reg8 *) Pin_5__PRT) +/* Connect to Analog Globals */ +#define Pin_5_AG (* (reg8 *) Pin_5__AG) +/* Analog MUX bux enable */ +#define Pin_5_AMUX (* (reg8 *) Pin_5__AMUX) +/* Bidirectional Enable */ +#define Pin_5_BIE (* (reg8 *) Pin_5__BIE) +/* Bit-mask for Aliased Register Access */ +#define Pin_5_BIT_MASK (* (reg8 *) Pin_5__BIT_MASK) +/* Bypass Enable */ +#define Pin_5_BYP (* (reg8 *) Pin_5__BYP) +/* Port wide control signals */ +#define Pin_5_CTL (* (reg8 *) Pin_5__CTL) +/* Drive Modes */ +#define Pin_5_DM0 (* (reg8 *) Pin_5__DM0) +#define Pin_5_DM1 (* (reg8 *) Pin_5__DM1) +#define Pin_5_DM2 (* (reg8 *) Pin_5__DM2) +/* Input Buffer Disable Override */ +#define Pin_5_INP_DIS (* (reg8 *) Pin_5__INP_DIS) +/* LCD Common or Segment Drive */ +#define Pin_5_LCD_COM_SEG (* (reg8 *) Pin_5__LCD_COM_SEG) +/* Enable Segment LCD */ +#define Pin_5_LCD_EN (* (reg8 *) Pin_5__LCD_EN) +/* Slew Rate Control */ +#define Pin_5_SLW (* (reg8 *) Pin_5__SLW) + +/* DSI Port Registers */ +/* Global DSI Select Register */ +#define Pin_5_PRTDSI__CAPS_SEL (* (reg8 *) Pin_5__PRTDSI__CAPS_SEL) +/* Double Sync Enable */ +#define Pin_5_PRTDSI__DBL_SYNC_IN (* (reg8 *) Pin_5__PRTDSI__DBL_SYNC_IN) +/* Output Enable Select Drive Strength */ +#define Pin_5_PRTDSI__OE_SEL0 (* (reg8 *) Pin_5__PRTDSI__OE_SEL0) +#define Pin_5_PRTDSI__OE_SEL1 (* (reg8 *) Pin_5__PRTDSI__OE_SEL1) +/* Port Pin Output Select Registers */ +#define Pin_5_PRTDSI__OUT_SEL0 (* (reg8 *) Pin_5__PRTDSI__OUT_SEL0) +#define Pin_5_PRTDSI__OUT_SEL1 (* (reg8 *) Pin_5__PRTDSI__OUT_SEL1) +/* Sync Output Enable Registers */ +#define Pin_5_PRTDSI__SYNC_OUT (* (reg8 *) Pin_5__PRTDSI__SYNC_OUT) + + +#if defined(Pin_5__INTSTAT) /* Interrupt Registers */ + + #define Pin_5_INTSTAT (* (reg8 *) Pin_5__INTSTAT) + #define Pin_5_SNAP (* (reg8 *) Pin_5__SNAP) + +#endif /* Interrupt Registers */ + +#endif /* CY_PSOC5A... */ + +#endif /* CY_PINS_Pin_5_H */ + + +/* [] END OF FILE */ diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_5_aliases.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_5_aliases.h new file mode 100644 index 0000000..1f8e49d --- /dev/null +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Pin_5_aliases.h @@ -0,0 +1,32 @@ +/******************************************************************************* +* File Name: Pin_5.h +* Version 1.90 +* +* Description: +* This file containts Control Register function prototypes and register defines +* +* Note: +* +******************************************************************************** +* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* You may use this file only in accordance with the license, terms, conditions, +* disclaimers, and limitations in the end user license agreement accompanying +* the software package with which this file was provided. +*******************************************************************************/ + +#if !defined(CY_PINS_Pin_5_ALIASES_H) /* Pins Pin_5_ALIASES_H */ +#define CY_PINS_Pin_5_ALIASES_H + +#include "cytypes.h" +#include "cyfitter.h" + + + +/*************************************** +* Constants +***************************************/ +#define Pin_5_0 Pin_5__0__PC + +#endif /* End Pins Pin_5_ALIASES_H */ + +/* [] END OF FILE */ diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Timer_1.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Timer_1.c new file mode 100644 index 0000000..66ba383 --- /dev/null +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Timer_1.c @@ -0,0 +1,754 @@ +/******************************************************************************* +* File Name: Timer_1.c +* Version 2.50 +* +* Description: +* The Timer component consists of a 8, 16, 24 or 32-bit timer with +* a selectable period between 2 and 2^Width - 1. The timer may free run +* or be used as a capture timer as well. The capture can be initiated +* by a positive or negative edge signal as well as via software. +* A trigger input can be programmed to enable the timer on rising edge +* falling edge, either edge or continous run. +* Interrupts may be generated due to a terminal count condition +* or a capture event. +* +* Note: +* +******************************************************************************** +* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* You may use this file only in accordance with the license, terms, conditions, +* disclaimers, and limitations in the end user license agreement accompanying +* the software package with which this file was provided. +********************************************************************************/ + +#include "Timer_1.h" + +uint8 Timer_1_initVar = 0u; + + +/******************************************************************************* +* Function Name: Timer_1_Init +******************************************************************************** +* +* Summary: +* Initialize to the schematic state +* +* Parameters: +* void +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_Init(void) +{ + #if(!Timer_1_UsingFixedFunction) + /* Interrupt State Backup for Critical Region*/ + uint8 Timer_1_interruptState; + #endif /* Interrupt state back up for Fixed Function only */ + + #if (Timer_1_UsingFixedFunction) + /* Clear all bits but the enable bit (if it's already set) for Timer operation */ + Timer_1_CONTROL &= Timer_1_CTRL_ENABLE; + + /* Clear the mode bits for continuous run mode */ + #if (CY_PSOC5A) + Timer_1_CONTROL2 &= ((uint8)(~Timer_1_CTRL_MODE_MASK)); + #endif /* Clear bits in CONTROL2 only in PSOC5A */ + + #if (CY_PSOC3 || CY_PSOC5LP) + Timer_1_CONTROL3 &= ((uint8)(~Timer_1_CTRL_MODE_MASK)); + #endif /* CONTROL3 register exists only in PSoC3 OR PSoC5LP */ + + /* Check if One Shot mode is enabled i.e. RunMode !=0*/ + #if (Timer_1_RunModeUsed != 0x0u) + /* Set 3rd bit of Control register to enable one shot mode */ + Timer_1_CONTROL |= 0x04u; + #endif /* One Shot enabled only when RunModeUsed is not Continuous*/ + + #if (Timer_1_RunModeUsed == 2) + #if (CY_PSOC5A) + /* Set last 2 bits of control2 register if one shot(halt on + interrupt) is enabled*/ + Timer_1_CONTROL2 |= 0x03u; + #endif /* Set One-Shot Halt on Interrupt bit in CONTROL2 for PSoC5A */ + + #if (CY_PSOC3 || CY_PSOC5LP) + /* Set last 2 bits of control3 register if one shot(halt on + interrupt) is enabled*/ + Timer_1_CONTROL3 |= 0x03u; + #endif /* Set One-Shot Halt on Interrupt bit in CONTROL3 for PSoC3 or PSoC5LP */ + + #endif /* Remove section if One Shot Halt on Interrupt is not enabled */ + + #if (Timer_1_UsingHWEnable != 0) + #if (CY_PSOC5A) + /* Set the default Run Mode of the Timer to Continuous */ + Timer_1_CONTROL2 |= Timer_1_CTRL_MODE_PULSEWIDTH; + #endif /* Set Continuous Run Mode in CONTROL2 for PSoC5A */ + + #if (CY_PSOC3 || CY_PSOC5LP) + /* Clear and Set ROD and COD bits of CFG2 register */ + Timer_1_CONTROL3 &= ((uint8)(~Timer_1_CTRL_RCOD_MASK)); + Timer_1_CONTROL3 |= Timer_1_CTRL_RCOD; + + /* Clear and Enable the HW enable bit in CFG2 register */ + Timer_1_CONTROL3 &= ((uint8)(~Timer_1_CTRL_ENBL_MASK)); + Timer_1_CONTROL3 |= Timer_1_CTRL_ENBL; + + /* Set the default Run Mode of the Timer to Continuous */ + Timer_1_CONTROL3 |= Timer_1_CTRL_MODE_CONTINUOUS; + #endif /* Set Continuous Run Mode in CONTROL3 for PSoC3ES3 or PSoC5A */ + + #endif /* Configure Run Mode with hardware enable */ + + /* Clear and Set SYNCTC and SYNCCMP bits of RT1 register */ + Timer_1_RT1 &= ((uint8)(~Timer_1_RT1_MASK)); + Timer_1_RT1 |= Timer_1_SYNC; + + /*Enable DSI Sync all all inputs of the Timer*/ + Timer_1_RT1 &= ((uint8)(~Timer_1_SYNCDSI_MASK)); + Timer_1_RT1 |= Timer_1_SYNCDSI_EN; + + /* Set the IRQ to use the status register interrupts */ + Timer_1_CONTROL2 |= Timer_1_CTRL2_IRQ_SEL; + #endif /* Configuring registers of fixed function implementation */ + + /* Set Initial values from Configuration */ + Timer_1_WritePeriod(Timer_1_INIT_PERIOD); + Timer_1_WriteCounter(Timer_1_INIT_PERIOD); + + #if (Timer_1_UsingHWCaptureCounter)/* Capture counter is enabled */ + Timer_1_CAPTURE_COUNT_CTRL |= Timer_1_CNTR_ENABLE; + Timer_1_SetCaptureCount(Timer_1_INIT_CAPTURE_COUNT); + #endif /* Configure capture counter value */ + + #if (!Timer_1_UsingFixedFunction) + #if (Timer_1_SoftwareCaptureMode) + Timer_1_SetCaptureMode(Timer_1_INIT_CAPTURE_MODE); + #endif /* Set Capture Mode for UDB implementation if capture mode is software controlled */ + + #if (Timer_1_SoftwareTriggerMode) + if (0u == (Timer_1_CONTROL & Timer_1__B_TIMER__TM_SOFTWARE)) + { + Timer_1_SetTriggerMode(Timer_1_INIT_TRIGGER_MODE); + } + #endif /* Set trigger mode for UDB Implementation if trigger mode is software controlled */ + + /* CyEnterCriticalRegion and CyExitCriticalRegion are used to mark following region critical*/ + /* Enter Critical Region*/ + Timer_1_interruptState = CyEnterCriticalSection(); + + /* Use the interrupt output of the status register for IRQ output */ + Timer_1_STATUS_AUX_CTRL |= Timer_1_STATUS_ACTL_INT_EN_MASK; + + /* Exit Critical Region*/ + CyExitCriticalSection(Timer_1_interruptState); + + #if (Timer_1_EnableTriggerMode) + Timer_1_EnableTrigger(); + #endif /* Set Trigger enable bit for UDB implementation in the control register*/ + + #if (Timer_1_InterruptOnCaptureCount) + #if (!Timer_1_ControlRegRemoved) + Timer_1_SetInterruptCount(Timer_1_INIT_INT_CAPTURE_COUNT); + #endif /* Set interrupt count in control register if control register is not removed */ + #endif /*Set interrupt count in UDB implementation if interrupt count feature is checked.*/ + + Timer_1_ClearFIFO(); + #endif /* Configure additional features of UDB implementation */ + + Timer_1_SetInterruptMode(Timer_1_INIT_INTERRUPT_MODE); +} + + +/******************************************************************************* +* Function Name: Timer_1_Enable +******************************************************************************** +* +* Summary: +* Enable the Timer +* +* Parameters: +* void +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_Enable(void) +{ + /* Globally Enable the Fixed Function Block chosen */ + #if (Timer_1_UsingFixedFunction) + Timer_1_GLOBAL_ENABLE |= Timer_1_BLOCK_EN_MASK; + Timer_1_GLOBAL_STBY_ENABLE |= Timer_1_BLOCK_STBY_EN_MASK; + #endif /* Set Enable bit for enabling Fixed function timer*/ + + /* Remove assignment if control register is removed */ + #if (!Timer_1_ControlRegRemoved || Timer_1_UsingFixedFunction) + Timer_1_CONTROL |= Timer_1_CTRL_ENABLE; + #endif /* Remove assignment if control register is removed */ +} + + +/******************************************************************************* +* Function Name: Timer_1_Start +******************************************************************************** +* +* Summary: +* The start function initializes the timer with the default values, the +* enables the timerto begin counting. It does not enable interrupts, +* the EnableInt command should be called if interrupt generation is required. +* +* Parameters: +* void +* +* Return: +* void +* +* Global variables: +* Timer_1_initVar: Is modified when this function is called for the +* first time. Is used to ensure that initialization happens only once. +* +*******************************************************************************/ +void Timer_1_Start(void) +{ + if(Timer_1_initVar == 0u) + { + Timer_1_Init(); + + Timer_1_initVar = 1u; /* Clear this bit for Initialization */ + } + + /* Enable the Timer */ + Timer_1_Enable(); +} + + +/******************************************************************************* +* Function Name: Timer_1_Stop +******************************************************************************** +* +* Summary: +* The stop function halts the timer, but does not change any modes or disable +* interrupts. +* +* Parameters: +* void +* +* Return: +* void +* +* Side Effects: If the Enable mode is set to Hardware only then this function +* has no effect on the operation of the timer. +* +*******************************************************************************/ +void Timer_1_Stop(void) +{ + /* Disable Timer */ + #if(!Timer_1_ControlRegRemoved || Timer_1_UsingFixedFunction) + Timer_1_CONTROL &= ((uint8)(~Timer_1_CTRL_ENABLE)); + #endif /* Remove assignment if control register is removed */ + + /* Globally disable the Fixed Function Block chosen */ + #if (Timer_1_UsingFixedFunction) + Timer_1_GLOBAL_ENABLE &= ((uint8)(~Timer_1_BLOCK_EN_MASK)); + Timer_1_GLOBAL_STBY_ENABLE &= ((uint8)(~Timer_1_BLOCK_STBY_EN_MASK)); + #endif /* Disable global enable for the Timer Fixed function block to stop the Timer*/ +} + + +/******************************************************************************* +* Function Name: Timer_1_SetInterruptMode +******************************************************************************** +* +* Summary: +* This function selects which of the interrupt inputs may cause an interrupt. +* The twosources are caputure and terminal. One, both or neither may +* be selected. +* +* Parameters: +* interruptMode: This parameter is used to enable interrups on either/or +* terminal count or capture. +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_SetInterruptMode(uint8 interruptMode) +{ + Timer_1_STATUS_MASK = interruptMode; +} + + +/******************************************************************************* +* Function Name: Timer_1_SoftwareCapture +******************************************************************************** +* +* Summary: +* This function forces a capture independent of the capture signal. +* +* Parameters: +* void +* +* Return: +* void +* +* Side Effects: +* An existing hardware capture could be overwritten. +* +*******************************************************************************/ +void Timer_1_SoftwareCapture(void) +{ + /* Generate a software capture by reading the counter register */ + (void)Timer_1_COUNTER_LSB; + /* Capture Data is now in the FIFO */ +} + + +/******************************************************************************* +* Function Name: Timer_1_ReadStatusRegister +******************************************************************************** +* +* Summary: +* Reads the status register and returns it's state. This function should use +* defined types for the bit-field information as the bits in this register may +* be permuteable. +* +* Parameters: +* void +* +* Return: +* The contents of the status register +* +* Side Effects: +* Status register bits may be clear on read. +* +*******************************************************************************/ +uint8 Timer_1_ReadStatusRegister(void) +{ + return (Timer_1_STATUS); +} + + +#if (!Timer_1_ControlRegRemoved) /* Remove API if control register is removed */ + + +/******************************************************************************* +* Function Name: Timer_1_ReadControlRegister +******************************************************************************** +* +* Summary: +* Reads the control register and returns it's value. +* +* Parameters: +* void +* +* Return: +* The contents of the control register +* +*******************************************************************************/ +uint8 Timer_1_ReadControlRegister(void) +{ + return ((uint8)Timer_1_CONTROL); +} + + +/******************************************************************************* +* Function Name: Timer_1_WriteControlRegister +******************************************************************************** +* +* Summary: +* Sets the bit-field of the control register. +* +* Parameters: +* control: The contents of the control register +* +* Return: +* +*******************************************************************************/ +void Timer_1_WriteControlRegister(uint8 control) +{ + Timer_1_CONTROL = control; +} +#endif /* Remove API if control register is removed */ + + +/******************************************************************************* +* Function Name: Timer_1_ReadPeriod +******************************************************************************** +* +* Summary: +* This function returns the current value of the Period. +* +* Parameters: +* void +* +* Return: +* The present value of the counter. +* +*******************************************************************************/ +uint16 Timer_1_ReadPeriod(void) +{ + #if(Timer_1_UsingFixedFunction) + return ((uint16)CY_GET_REG16(Timer_1_PERIOD_LSB_PTR)); + #else + return (CY_GET_REG16(Timer_1_PERIOD_LSB_PTR)); + #endif /* (Timer_1_UsingFixedFunction) */ +} + + +/******************************************************************************* +* Function Name: Timer_1_WritePeriod +******************************************************************************** +* +* Summary: +* This function is used to change the period of the counter. The new period +* will be loaded the next time terminal count is detected. +* +* Parameters: +* period: This value may be between 1 and (2^Resolution)-1. A value of 0 will +* result in the counter remaining at zero. +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_WritePeriod(uint16 period) +{ + #if(Timer_1_UsingFixedFunction) + uint16 period_temp = (uint16)period; + CY_SET_REG16(Timer_1_PERIOD_LSB_PTR, period_temp); + #else + CY_SET_REG16(Timer_1_PERIOD_LSB_PTR, period); + #endif /*Write Period value with appropriate resolution suffix depending on UDB or fixed function implementation */ +} + + +/******************************************************************************* +* Function Name: Timer_1_ReadCapture +******************************************************************************** +* +* Summary: +* This function returns the last value captured. +* +* Parameters: +* void +* +* Return: +* Present Capture value. +* +*******************************************************************************/ +uint16 Timer_1_ReadCapture(void) +{ + #if(Timer_1_UsingFixedFunction) + return ((uint16)CY_GET_REG16(Timer_1_CAPTURE_LSB_PTR)); + #else + return (CY_GET_REG16(Timer_1_CAPTURE_LSB_PTR)); + #endif /* (Timer_1_UsingFixedFunction) */ +} + + +/******************************************************************************* +* Function Name: Timer_1_WriteCounter +******************************************************************************** +* +* Summary: +* This funtion is used to set the counter to a specific value +* +* Parameters: +* counter: New counter value. +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_WriteCounter(uint16 counter) \ + +{ + #if(Timer_1_UsingFixedFunction) + /* This functionality is removed until a FixedFunction HW update to + * allow this register to be written + */ + CY_SET_REG16(Timer_1_COUNTER_LSB_PTR, (uint16)counter); + + #else + CY_SET_REG16(Timer_1_COUNTER_LSB_PTR, counter); + #endif /* Set Write Counter only for the UDB implementation (Write Counter not available in fixed function Timer */ +} + + +/******************************************************************************* +* Function Name: Timer_1_ReadCounter +******************************************************************************** +* +* Summary: +* This function returns the current counter value. +* +* Parameters: +* void +* +* Return: +* Present compare value. +* +*******************************************************************************/ +uint16 Timer_1_ReadCounter(void) +{ + + /* Force capture by reading Accumulator */ + /* Must first do a software capture to be able to read the counter */ + /* It is up to the user code to make sure there isn't already captured data in the FIFO */ + (void)Timer_1_COUNTER_LSB; + + /* Read the data from the FIFO (or capture register for Fixed Function)*/ + #if(Timer_1_UsingFixedFunction) + return ((uint16)CY_GET_REG16(Timer_1_CAPTURE_LSB_PTR)); + #else + return (CY_GET_REG16(Timer_1_CAPTURE_LSB_PTR)); + #endif /* (Timer_1_UsingFixedFunction) */ +} + + +#if(!Timer_1_UsingFixedFunction) /* UDB Specific Functions */ + +/******************************************************************************* + * The functions below this point are only available using the UDB + * implementation. If a feature is selected, then the API is enabled. + ******************************************************************************/ + + +#if (Timer_1_SoftwareCaptureMode) + + +/******************************************************************************* +* Function Name: Timer_1_SetCaptureMode +******************************************************************************** +* +* Summary: +* This function sets the capture mode to either rising or falling edge. +* +* Parameters: +* captureMode: This parameter sets the capture mode of the UDB capture feature +* The parameter values are defined using the +* #define Timer_1__B_TIMER__CM_NONE 0 +#define Timer_1__B_TIMER__CM_RISINGEDGE 1 +#define Timer_1__B_TIMER__CM_FALLINGEDGE 2 +#define Timer_1__B_TIMER__CM_EITHEREDGE 3 +#define Timer_1__B_TIMER__CM_SOFTWARE 4 + identifiers +* The following are the possible values of the parameter +* Timer_1__B_TIMER__CM_NONE - Set Capture mode to None +* Timer_1__B_TIMER__CM_RISINGEDGE - Rising edge of Capture input +* Timer_1__B_TIMER__CM_FALLINGEDGE - Falling edge of Capture input +* Timer_1__B_TIMER__CM_EITHEREDGE - Either edge of Capture input +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_SetCaptureMode(uint8 captureMode) +{ + /* This must only set to two bits of the control register associated */ + captureMode = ((uint8)((uint8)captureMode << Timer_1_CTRL_CAP_MODE_SHIFT)); + captureMode &= (Timer_1_CTRL_CAP_MODE_MASK); + + /* Clear the Current Setting */ + Timer_1_CONTROL &= ((uint8)(~Timer_1_CTRL_CAP_MODE_MASK)); + + /* Write The New Setting */ + Timer_1_CONTROL |= captureMode; +} +#endif /* Remove API if Capture Mode is not Software Controlled */ + + +#if (Timer_1_SoftwareTriggerMode) + + +/******************************************************************************* +* Function Name: Timer_1_SetTriggerMode +******************************************************************************** +* +* Summary: +* This function sets the trigger input mode +* +* Parameters: +* triggerMode: Pass one of the pre-defined Trigger Modes (except Software) + #define Timer_1__B_TIMER__TM_NONE 0x00u + #define Timer_1__B_TIMER__TM_RISINGEDGE 0x04u + #define Timer_1__B_TIMER__TM_FALLINGEDGE 0x08u + #define Timer_1__B_TIMER__TM_EITHEREDGE 0x0Cu + #define Timer_1__B_TIMER__TM_SOFTWARE 0x10u +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_SetTriggerMode(uint8 triggerMode) +{ + /* This must only set to two bits of the control register associated */ + triggerMode &= Timer_1_CTRL_TRIG_MODE_MASK; + + /* Clear the Current Setting */ + Timer_1_CONTROL &= ((uint8)(~Timer_1_CTRL_TRIG_MODE_MASK)); + + /* Write The New Setting */ + Timer_1_CONTROL |= (triggerMode | Timer_1__B_TIMER__TM_SOFTWARE); + +} +#endif /* Remove API if Trigger Mode is not Software Controlled */ + +#if (Timer_1_EnableTriggerMode) + + +/******************************************************************************* +* Function Name: Timer_1_EnableTrigger +******************************************************************************** +* +* Summary: +* Sets the control bit enabling Hardware Trigger mode +* +* Parameters: +* void +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_EnableTrigger(void) +{ + #if (!Timer_1_ControlRegRemoved) /* Remove assignment if control register is removed */ + Timer_1_CONTROL |= Timer_1_CTRL_TRIG_EN; + #endif /* Remove code section if control register is not used */ +} + + +/******************************************************************************* +* Function Name: Timer_1_DisableTrigger +******************************************************************************** +* +* Summary: +* Clears the control bit enabling Hardware Trigger mode +* +* Parameters: +* void +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_DisableTrigger(void) +{ + #if (!Timer_1_ControlRegRemoved) /* Remove assignment if control register is removed */ + Timer_1_CONTROL &= ((uint8)(~Timer_1_CTRL_TRIG_EN)); + #endif /* Remove code section if control register is not used */ +} +#endif /* Remove API is Trigger Mode is set to None */ + + +#if(Timer_1_InterruptOnCaptureCount) +#if (!Timer_1_ControlRegRemoved) /* Remove API if control register is removed */ + + +/******************************************************************************* +* Function Name: Timer_1_SetInterruptCount +******************************************************************************** +* +* Summary: +* This function sets the capture count before an interrupt is triggered. +* +* Parameters: +* interruptCount: A value between 0 and 3 is valid. If the value is 0, then +* an interrupt will occur each time a capture occurs. +* A value of 1 to 3 will cause the interrupt +* to delay by the same number of captures. +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_SetInterruptCount(uint8 interruptCount) +{ + /* This must only set to two bits of the control register associated */ + interruptCount &= Timer_1_CTRL_INTCNT_MASK; + + /* Clear the Current Setting */ + Timer_1_CONTROL &= ((uint8)(~Timer_1_CTRL_INTCNT_MASK)); + /* Write The New Setting */ + Timer_1_CONTROL |= interruptCount; +} +#endif /* Remove API if control register is removed */ +#endif /* Timer_1_InterruptOnCaptureCount */ + + +#if (Timer_1_UsingHWCaptureCounter) + + +/******************************************************************************* +* Function Name: Timer_1_SetCaptureCount +******************************************************************************** +* +* Summary: +* This function sets the capture count +* +* Parameters: +* captureCount: A value between 2 and 127 inclusive is valid. A value of 1 +* to 127 will cause the interrupt to delay by the same number of +* captures. +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_SetCaptureCount(uint8 captureCount) +{ + Timer_1_CAP_COUNT = captureCount; +} + + +/******************************************************************************* +* Function Name: Timer_1_ReadCaptureCount +******************************************************************************** +* +* Summary: +* This function reads the capture count setting +* +* Parameters: +* void +* +* Return: +* Returns the Capture Count Setting +* +*******************************************************************************/ +uint8 Timer_1_ReadCaptureCount(void) +{ + return ((uint8)Timer_1_CAP_COUNT); +} +#endif /* Timer_1_UsingHWCaptureCounter */ + + +/******************************************************************************* +* Function Name: Timer_1_ClearFIFO +******************************************************************************** +* +* Summary: +* This function clears all capture data from the capture FIFO +* +* Parameters: +* void +* +* Return: +* void +* +*******************************************************************************/ +void Timer_1_ClearFIFO(void) +{ + while(0u != (Timer_1_ReadStatusRegister() & Timer_1_STATUS_FIFONEMP)) + { + (void)Timer_1_ReadCapture(); + } +} + +#endif /* UDB Specific Functions */ + + +/* [] END OF FILE */ diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Timer_1.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Timer_1.h new file mode 100644 index 0000000..9fbf5b6 --- /dev/null +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Timer_1.h @@ -0,0 +1,439 @@ +/******************************************************************************* +* File Name: Timer_1.h +* Version 2.50 +* +* Description: +* Contains the function prototypes and constants available to the timer +* user module. +* +* Note: +* None +* +******************************************************************************** +* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* You may use this file only in accordance with the license, terms, conditions, +* disclaimers, and limitations in the end user license agreement accompanying +* the software package with which this file was provided. +********************************************************************************/ + +#if !defined(CY_Timer_v2_30_Timer_1_H) +#define CY_Timer_v2_30_Timer_1_H + +#include "cytypes.h" +#include "cyfitter.h" +#include "CyLib.h" /* For CyEnterCriticalSection() and CyExitCriticalSection() functions */ + +extern uint8 Timer_1_initVar; + +/* Check to see if required defines such as CY_PSOC5LP are available */ +/* They are defined starting with cy_boot v3.0 */ +#if !defined (CY_PSOC5LP) + #error Component Timer_v2_50 requires cy_boot v3.0 or later +#endif /* (CY_ PSOC5LP) */ + + +/************************************** +* Parameter Defaults +**************************************/ + +#define Timer_1_Resolution 16u +#define Timer_1_UsingFixedFunction 0u +#define Timer_1_UsingHWCaptureCounter 0u +#define Timer_1_SoftwareCaptureMode 0u +#define Timer_1_SoftwareTriggerMode 0u +#define Timer_1_UsingHWEnable 0u +#define Timer_1_EnableTriggerMode 0u +#define Timer_1_InterruptOnCaptureCount 0u +#define Timer_1_RunModeUsed 1u +#define Timer_1_ControlRegRemoved 0u + + +/*************************************** +* Type defines +***************************************/ + + +/************************************************************************** + * Sleep Wakeup Backup structure for Timer Component + *************************************************************************/ +typedef struct +{ + uint8 TimerEnableState; + #if(!Timer_1_UsingFixedFunction) + #if (CY_UDB_V0) + uint16 TimerUdb; /* Timer internal counter value */ + uint16 TimerPeriod; /* Timer Period value */ + uint8 InterruptMaskValue; /* Timer Compare Value */ + #if (Timer_1_UsingHWCaptureCounter) + uint8 TimerCaptureCounter; /* Timer Capture Counter Value */ + #endif /* variable declaration for backing up Capture Counter value*/ + #endif /* variables for non retention registers in CY_UDB_V0 */ + + #if (CY_UDB_V1) + uint16 TimerUdb; + uint8 InterruptMaskValue; + #if (Timer_1_UsingHWCaptureCounter) + uint8 TimerCaptureCounter; + #endif /* variable declarations for backing up non retention registers in CY_UDB_V1 */ + #endif /* (CY_UDB_V1) */ + + #if (!Timer_1_ControlRegRemoved) + uint8 TimerControlRegister; + #endif /* variable declaration for backing up enable state of the Timer */ + #endif /* define backup variables only for UDB implementation. Fixed function registers are all retention */ +}Timer_1_backupStruct; + + +/*************************************** +* Function Prototypes +***************************************/ + +void Timer_1_Start(void) ; +void Timer_1_Stop(void) ; + +void Timer_1_SetInterruptMode(uint8 interruptMode) ; +uint8 Timer_1_ReadStatusRegister(void) ; +/* Deprecated function. Do not use this in future. Retained for backward compatibility */ +#define Timer_1_GetInterruptSource() Timer_1_ReadStatusRegister() + +#if(!Timer_1_ControlRegRemoved) + uint8 Timer_1_ReadControlRegister(void) ; + void Timer_1_WriteControlRegister(uint8 control) \ + ; +#endif /* (!Timer_1_ControlRegRemoved) */ + +uint16 Timer_1_ReadPeriod(void) ; +void Timer_1_WritePeriod(uint16 period) \ + ; +uint16 Timer_1_ReadCounter(void) ; +void Timer_1_WriteCounter(uint16 counter) \ + ; +uint16 Timer_1_ReadCapture(void) ; +void Timer_1_SoftwareCapture(void) ; + + +#if(!Timer_1_UsingFixedFunction) /* UDB Prototypes */ + #if (Timer_1_SoftwareCaptureMode) + void Timer_1_SetCaptureMode(uint8 captureMode) ; + #endif /* (!Timer_1_UsingFixedFunction) */ + + #if (Timer_1_SoftwareTriggerMode) + void Timer_1_SetTriggerMode(uint8 triggerMode) ; + #endif /* (Timer_1_SoftwareTriggerMode) */ + #if (Timer_1_EnableTriggerMode) + void Timer_1_EnableTrigger(void) ; + void Timer_1_DisableTrigger(void) ; + #endif /* (Timer_1_EnableTriggerMode) */ + + #if(Timer_1_InterruptOnCaptureCount) + #if(!Timer_1_ControlRegRemoved) + void Timer_1_SetInterruptCount(uint8 interruptCount) \ + ; + #endif /* (!Timer_1_ControlRegRemoved) */ + #endif /* (Timer_1_InterruptOnCaptureCount) */ + + #if (Timer_1_UsingHWCaptureCounter) + void Timer_1_SetCaptureCount(uint8 captureCount) \ + ; + uint8 Timer_1_ReadCaptureCount(void) ; + #endif /* (Timer_1_UsingHWCaptureCounter) */ + + void Timer_1_ClearFIFO(void) ; +#endif /* UDB Prototypes */ + +/* Sleep Retention APIs */ +void Timer_1_Init(void) ; +void Timer_1_Enable(void) ; +void Timer_1_SaveConfig(void) ; +void Timer_1_RestoreConfig(void) ; +void Timer_1_Sleep(void) ; +void Timer_1_Wakeup(void) ; + + +/*************************************** +* Enumerated Types and Parameters +***************************************/ + +/* Enumerated Type B_Timer__CaptureModes, Used in Capture Mode */ +#define Timer_1__B_TIMER__CM_NONE 0 +#define Timer_1__B_TIMER__CM_RISINGEDGE 1 +#define Timer_1__B_TIMER__CM_FALLINGEDGE 2 +#define Timer_1__B_TIMER__CM_EITHEREDGE 3 +#define Timer_1__B_TIMER__CM_SOFTWARE 4 + + + +/* Enumerated Type B_Timer__TriggerModes, Used in Trigger Mode */ +#define Timer_1__B_TIMER__TM_NONE 0x00u +#define Timer_1__B_TIMER__TM_RISINGEDGE 0x04u +#define Timer_1__B_TIMER__TM_FALLINGEDGE 0x08u +#define Timer_1__B_TIMER__TM_EITHEREDGE 0x0Cu +#define Timer_1__B_TIMER__TM_SOFTWARE 0x10u + + +/*************************************** +* Initialial Parameter Constants +***************************************/ + +#define Timer_1_INIT_PERIOD 499u +#define Timer_1_INIT_CAPTURE_MODE ((uint8)((uint8)0u << Timer_1_CTRL_CAP_MODE_SHIFT)) +#define Timer_1_INIT_TRIGGER_MODE ((uint8)((uint8)0u << Timer_1_CTRL_TRIG_MODE_SHIFT)) +#if (Timer_1_UsingFixedFunction) + #define Timer_1_INIT_INTERRUPT_MODE (((uint8)((uint8)0u << Timer_1_STATUS_TC_INT_MASK_SHIFT)) | \ + ((uint8)((uint8)0 << Timer_1_STATUS_CAPTURE_INT_MASK_SHIFT))) +#else + #define Timer_1_INIT_INTERRUPT_MODE (((uint8)((uint8)0u << Timer_1_STATUS_TC_INT_MASK_SHIFT)) | \ + ((uint8)((uint8)0 << Timer_1_STATUS_CAPTURE_INT_MASK_SHIFT)) | \ + ((uint8)((uint8)0 << Timer_1_STATUS_FIFOFULL_INT_MASK_SHIFT))) +#endif /* (Timer_1_UsingFixedFunction) */ +#define Timer_1_INIT_CAPTURE_COUNT (2u) +#define Timer_1_INIT_INT_CAPTURE_COUNT ((uint8)((uint8)(1u - 1u) << Timer_1_CTRL_INTCNT_SHIFT)) + + +/*************************************** +* Registers +***************************************/ + +#if (Timer_1_UsingFixedFunction) /* Implementation Specific Registers and Register Constants */ + + + /*************************************** + * Fixed Function Registers + ***************************************/ + + #define Timer_1_STATUS (*(reg8 *) Timer_1_TimerHW__SR0 ) + /* In Fixed Function Block Status and Mask are the same register */ + #define Timer_1_STATUS_MASK (*(reg8 *) Timer_1_TimerHW__SR0 ) + #define Timer_1_CONTROL (*(reg8 *) Timer_1_TimerHW__CFG0) + #define Timer_1_CONTROL2 (*(reg8 *) Timer_1_TimerHW__CFG1) + #define Timer_1_CONTROL2_PTR ( (reg8 *) Timer_1_TimerHW__CFG1) + #define Timer_1_RT1 (*(reg8 *) Timer_1_TimerHW__RT1) + #define Timer_1_RT1_PTR ( (reg8 *) Timer_1_TimerHW__RT1) + + #if (CY_PSOC3 || CY_PSOC5LP) + #define Timer_1_CONTROL3 (*(reg8 *) Timer_1_TimerHW__CFG2) + #define Timer_1_CONTROL3_PTR ( (reg8 *) Timer_1_TimerHW__CFG2) + #endif /* (CY_PSOC3 || CY_PSOC5LP) */ + #define Timer_1_GLOBAL_ENABLE (*(reg8 *) Timer_1_TimerHW__PM_ACT_CFG) + #define Timer_1_GLOBAL_STBY_ENABLE (*(reg8 *) Timer_1_TimerHW__PM_STBY_CFG) + + #define Timer_1_CAPTURE_LSB (* (reg16 *) Timer_1_TimerHW__CAP0 ) + #define Timer_1_CAPTURE_LSB_PTR ((reg16 *) Timer_1_TimerHW__CAP0 ) + #define Timer_1_PERIOD_LSB (* (reg16 *) Timer_1_TimerHW__PER0 ) + #define Timer_1_PERIOD_LSB_PTR ((reg16 *) Timer_1_TimerHW__PER0 ) + #define Timer_1_COUNTER_LSB (* (reg16 *) Timer_1_TimerHW__CNT_CMP0 ) + #define Timer_1_COUNTER_LSB_PTR ((reg16 *) Timer_1_TimerHW__CNT_CMP0 ) + + + /*************************************** + * Register Constants + ***************************************/ + + /* Fixed Function Block Chosen */ + #define Timer_1_BLOCK_EN_MASK Timer_1_TimerHW__PM_ACT_MSK + #define Timer_1_BLOCK_STBY_EN_MASK Timer_1_TimerHW__PM_STBY_MSK + + /* Control Register Bit Locations */ + /* Interrupt Count - Not valid for Fixed Function Block */ + #define Timer_1_CTRL_INTCNT_SHIFT 0x00u + /* Trigger Polarity - Not valid for Fixed Function Block */ + #define Timer_1_CTRL_TRIG_MODE_SHIFT 0x00u + /* Trigger Enable - Not valid for Fixed Function Block */ + #define Timer_1_CTRL_TRIG_EN_SHIFT 0x00u + /* Capture Polarity - Not valid for Fixed Function Block */ + #define Timer_1_CTRL_CAP_MODE_SHIFT 0x00u + /* Timer Enable - As defined in Register Map, part of TMRX_CFG0 register */ + #define Timer_1_CTRL_ENABLE_SHIFT 0x00u + + /* Control Register Bit Masks */ + #define Timer_1_CTRL_ENABLE ((uint8)((uint8)0x01u << Timer_1_CTRL_ENABLE_SHIFT)) + + /* Control2 Register Bit Masks */ + /* As defined in Register Map, Part of the TMRX_CFG1 register */ + #define Timer_1_CTRL2_IRQ_SEL_SHIFT 0x00u + #define Timer_1_CTRL2_IRQ_SEL ((uint8)((uint8)0x01u << Timer_1_CTRL2_IRQ_SEL_SHIFT)) + + #if (CY_PSOC5A) + /* Use CFG1 Mode bits to set run mode */ + /* As defined by Verilog Implementation */ + #define Timer_1_CTRL_MODE_SHIFT 0x01u + #define Timer_1_CTRL_MODE_MASK ((uint8)((uint8)0x07u << Timer_1_CTRL_MODE_SHIFT)) + #endif /* (CY_PSOC5A) */ + #if (CY_PSOC3 || CY_PSOC5LP) + /* Control3 Register Bit Locations */ + #define Timer_1_CTRL_RCOD_SHIFT 0x02u + #define Timer_1_CTRL_ENBL_SHIFT 0x00u + #define Timer_1_CTRL_MODE_SHIFT 0x00u + + /* Control3 Register Bit Masks */ + #define Timer_1_CTRL_RCOD_MASK ((uint8)((uint8)0x03u << Timer_1_CTRL_RCOD_SHIFT)) /* ROD and COD bit masks */ + #define Timer_1_CTRL_ENBL_MASK ((uint8)((uint8)0x80u << Timer_1_CTRL_ENBL_SHIFT)) /* HW_EN bit mask */ + #define Timer_1_CTRL_MODE_MASK ((uint8)((uint8)0x03u << Timer_1_CTRL_MODE_SHIFT)) /* Run mode bit mask */ + + #define Timer_1_CTRL_RCOD ((uint8)((uint8)0x03u << Timer_1_CTRL_RCOD_SHIFT)) + #define Timer_1_CTRL_ENBL ((uint8)((uint8)0x80u << Timer_1_CTRL_ENBL_SHIFT)) + #endif /* (CY_PSOC3 || CY_PSOC5LP) */ + + /*RT1 Synch Constants: Applicable for PSoC3 and PSoC5LP */ + #define Timer_1_RT1_SHIFT 0x04u + /* Sync TC and CMP bit masks */ + #define Timer_1_RT1_MASK ((uint8)((uint8)0x03u << Timer_1_RT1_SHIFT)) + #define Timer_1_SYNC ((uint8)((uint8)0x03u << Timer_1_RT1_SHIFT)) + #define Timer_1_SYNCDSI_SHIFT 0x00u + /* Sync all DSI inputs with Mask */ + #define Timer_1_SYNCDSI_MASK ((uint8)((uint8)0x0Fu << Timer_1_SYNCDSI_SHIFT)) + /* Sync all DSI inputs */ + #define Timer_1_SYNCDSI_EN ((uint8)((uint8)0x0Fu << Timer_1_SYNCDSI_SHIFT)) + + #define Timer_1_CTRL_MODE_PULSEWIDTH ((uint8)((uint8)0x01u << Timer_1_CTRL_MODE_SHIFT)) + #define Timer_1_CTRL_MODE_PERIOD ((uint8)((uint8)0x02u << Timer_1_CTRL_MODE_SHIFT)) + #define Timer_1_CTRL_MODE_CONTINUOUS ((uint8)((uint8)0x00u << Timer_1_CTRL_MODE_SHIFT)) + + /* Status Register Bit Locations */ + /* As defined in Register Map, part of TMRX_SR0 register */ + #define Timer_1_STATUS_TC_SHIFT 0x07u + /* As defined in Register Map, part of TMRX_SR0 register, Shared with Compare Status */ + #define Timer_1_STATUS_CAPTURE_SHIFT 0x06u + /* As defined in Register Map, part of TMRX_SR0 register */ + #define Timer_1_STATUS_TC_INT_MASK_SHIFT (Timer_1_STATUS_TC_SHIFT - 0x04u) + /* As defined in Register Map, part of TMRX_SR0 register, Shared with Compare Status */ + #define Timer_1_STATUS_CAPTURE_INT_MASK_SHIFT (Timer_1_STATUS_CAPTURE_SHIFT - 0x04u) + + /* Status Register Bit Masks */ + #define Timer_1_STATUS_TC ((uint8)((uint8)0x01u << Timer_1_STATUS_TC_SHIFT)) + #define Timer_1_STATUS_CAPTURE ((uint8)((uint8)0x01u << Timer_1_STATUS_CAPTURE_SHIFT)) + /* Interrupt Enable Bit-Mask for interrupt on TC */ + #define Timer_1_STATUS_TC_INT_MASK ((uint8)((uint8)0x01u << Timer_1_STATUS_TC_INT_MASK_SHIFT)) + /* Interrupt Enable Bit-Mask for interrupt on Capture */ + #define Timer_1_STATUS_CAPTURE_INT_MASK ((uint8)((uint8)0x01u << Timer_1_STATUS_CAPTURE_INT_MASK_SHIFT)) + +#else /* UDB Registers and Register Constants */ + + + /*************************************** + * UDB Registers + ***************************************/ + + #define Timer_1_STATUS (* (reg8 *) Timer_1_TimerUDB_nrstSts_stsreg__STATUS_REG ) + #define Timer_1_STATUS_MASK (* (reg8 *) Timer_1_TimerUDB_nrstSts_stsreg__MASK_REG) + #define Timer_1_STATUS_AUX_CTRL (* (reg8 *) Timer_1_TimerUDB_nrstSts_stsreg__STATUS_AUX_CTL_REG) + #define Timer_1_CONTROL (* (reg8 *) Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__CONTROL_REG ) + + #if(Timer_1_Resolution <= 8u) /* 8-bit Timer */ + #define Timer_1_CAPTURE_LSB (* (reg8 *) Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG ) + #define Timer_1_CAPTURE_LSB_PTR ((reg8 *) Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG ) + #define Timer_1_PERIOD_LSB (* (reg8 *) Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG ) + #define Timer_1_PERIOD_LSB_PTR ((reg8 *) Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG ) + #define Timer_1_COUNTER_LSB (* (reg8 *) Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG ) + #define Timer_1_COUNTER_LSB_PTR ((reg8 *) Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG ) + #elif(Timer_1_Resolution <= 16u) /* 8-bit Timer */ + #if(CY_PSOC3) /* 8-bit addres space */ + #define Timer_1_CAPTURE_LSB (* (reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG ) + #define Timer_1_CAPTURE_LSB_PTR ((reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG ) + #define Timer_1_PERIOD_LSB (* (reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG ) + #define Timer_1_PERIOD_LSB_PTR ((reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG ) + #define Timer_1_COUNTER_LSB (* (reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG ) + #define Timer_1_COUNTER_LSB_PTR ((reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG ) + #else /* 16-bit address space */ + #define Timer_1_CAPTURE_LSB (* (reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_F0_REG ) + #define Timer_1_CAPTURE_LSB_PTR ((reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_F0_REG ) + #define Timer_1_PERIOD_LSB (* (reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_D0_REG ) + #define Timer_1_PERIOD_LSB_PTR ((reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_D0_REG ) + #define Timer_1_COUNTER_LSB (* (reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_A0_REG ) + #define Timer_1_COUNTER_LSB_PTR ((reg16 *) Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_A0_REG ) + #endif /* CY_PSOC3 */ + #elif(Timer_1_Resolution <= 24u)/* 24-bit Timer */ + #define Timer_1_CAPTURE_LSB (* (reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG ) + #define Timer_1_CAPTURE_LSB_PTR ((reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG ) + #define Timer_1_PERIOD_LSB (* (reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG ) + #define Timer_1_PERIOD_LSB_PTR ((reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG ) + #define Timer_1_COUNTER_LSB (* (reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG ) + #define Timer_1_COUNTER_LSB_PTR ((reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG ) + #else /* 32-bit Timer */ + #if(CY_PSOC3 || CY_PSOC5) /* 8-bit address space */ + #define Timer_1_CAPTURE_LSB (* (reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG ) + #define Timer_1_CAPTURE_LSB_PTR ((reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG ) + #define Timer_1_PERIOD_LSB (* (reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG ) + #define Timer_1_PERIOD_LSB_PTR ((reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG ) + #define Timer_1_COUNTER_LSB (* (reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG ) + #define Timer_1_COUNTER_LSB_PTR ((reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG ) + #else /* 32-bit address space */ + #define Timer_1_CAPTURE_LSB (* (reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__32BIT_F0_REG ) + #define Timer_1_CAPTURE_LSB_PTR ((reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__32BIT_F0_REG ) + #define Timer_1_PERIOD_LSB (* (reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__32BIT_D0_REG ) + #define Timer_1_PERIOD_LSB_PTR ((reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__32BIT_D0_REG ) + #define Timer_1_COUNTER_LSB (* (reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__32BIT_A0_REG ) + #define Timer_1_COUNTER_LSB_PTR ((reg32 *) Timer_1_TimerUDB_sT16_timerdp_u0__32BIT_A0_REG ) + #endif /* CY_PSOC3 || CY_PSOC5 */ + #endif + + #if (Timer_1_UsingHWCaptureCounter) + #define Timer_1_CAP_COUNT (*(reg8 *) Timer_1_TimerUDB_sCapCount_counter__PERIOD_REG ) + #define Timer_1_CAP_COUNT_PTR ( (reg8 *) Timer_1_TimerUDB_sCapCount_counter__PERIOD_REG ) + #define Timer_1_CAPTURE_COUNT_CTRL (*(reg8 *) Timer_1_TimerUDB_sCapCount_counter__CONTROL_AUX_CTL_REG ) + #define Timer_1_CAPTURE_COUNT_CTRL_PTR ( (reg8 *) Timer_1_TimerUDB_sCapCount_counter__CONTROL_AUX_CTL_REG ) + #endif /* (Timer_1_UsingHWCaptureCounter) */ + + + /*************************************** + * Register Constants + ***************************************/ + + /* Control Register Bit Locations */ + #define Timer_1_CTRL_INTCNT_SHIFT 0x00u /* As defined by Verilog Implementation */ + #define Timer_1_CTRL_TRIG_MODE_SHIFT 0x02u /* As defined by Verilog Implementation */ + #define Timer_1_CTRL_TRIG_EN_SHIFT 0x04u /* As defined by Verilog Implementation */ + #define Timer_1_CTRL_CAP_MODE_SHIFT 0x05u /* As defined by Verilog Implementation */ + #define Timer_1_CTRL_ENABLE_SHIFT 0x07u /* As defined by Verilog Implementation */ + + /* Control Register Bit Masks */ + #define Timer_1_CTRL_INTCNT_MASK ((uint8)((uint8)0x03u << Timer_1_CTRL_INTCNT_SHIFT)) + #define Timer_1_CTRL_TRIG_MODE_MASK ((uint8)((uint8)0x03u << Timer_1_CTRL_TRIG_MODE_SHIFT)) + #define Timer_1_CTRL_TRIG_EN ((uint8)((uint8)0x01u << Timer_1_CTRL_TRIG_EN_SHIFT)) + #define Timer_1_CTRL_CAP_MODE_MASK ((uint8)((uint8)0x03u << Timer_1_CTRL_CAP_MODE_SHIFT)) + #define Timer_1_CTRL_ENABLE ((uint8)((uint8)0x01u << Timer_1_CTRL_ENABLE_SHIFT)) + + /* Bit Counter (7-bit) Control Register Bit Definitions */ + /* As defined by the Register map for the AUX Control Register */ + #define Timer_1_CNTR_ENABLE 0x20u + + /* Status Register Bit Locations */ + #define Timer_1_STATUS_TC_SHIFT 0x00u /* As defined by Verilog Implementation */ + #define Timer_1_STATUS_CAPTURE_SHIFT 0x01u /* As defined by Verilog Implementation */ + #define Timer_1_STATUS_TC_INT_MASK_SHIFT Timer_1_STATUS_TC_SHIFT + #define Timer_1_STATUS_CAPTURE_INT_MASK_SHIFT Timer_1_STATUS_CAPTURE_SHIFT + #define Timer_1_STATUS_FIFOFULL_SHIFT 0x02u /* As defined by Verilog Implementation */ + #define Timer_1_STATUS_FIFONEMP_SHIFT 0x03u /* As defined by Verilog Implementation */ + #define Timer_1_STATUS_FIFOFULL_INT_MASK_SHIFT Timer_1_STATUS_FIFOFULL_SHIFT + + /* Status Register Bit Masks */ + /* Sticky TC Event Bit-Mask */ + #define Timer_1_STATUS_TC ((uint8)((uint8)0x01u << Timer_1_STATUS_TC_SHIFT)) + /* Sticky Capture Event Bit-Mask */ + #define Timer_1_STATUS_CAPTURE ((uint8)((uint8)0x01u << Timer_1_STATUS_CAPTURE_SHIFT)) + /* Interrupt Enable Bit-Mask */ + #define Timer_1_STATUS_TC_INT_MASK ((uint8)((uint8)0x01u << Timer_1_STATUS_TC_SHIFT)) + /* Interrupt Enable Bit-Mask */ + #define Timer_1_STATUS_CAPTURE_INT_MASK ((uint8)((uint8)0x01u << Timer_1_STATUS_CAPTURE_SHIFT)) + /* NOT-Sticky FIFO Full Bit-Mask */ + #define Timer_1_STATUS_FIFOFULL ((uint8)((uint8)0x01u << Timer_1_STATUS_FIFOFULL_SHIFT)) + /* NOT-Sticky FIFO Not Empty Bit-Mask */ + #define Timer_1_STATUS_FIFONEMP ((uint8)((uint8)0x01u << Timer_1_STATUS_FIFONEMP_SHIFT)) + /* Interrupt Enable Bit-Mask */ + #define Timer_1_STATUS_FIFOFULL_INT_MASK ((uint8)((uint8)0x01u << Timer_1_STATUS_FIFOFULL_SHIFT)) + + #define Timer_1_STATUS_ACTL_INT_EN 0x10u /* As defined for the ACTL Register */ + + /* Datapath Auxillary Control Register definitions */ + #define Timer_1_AUX_CTRL_FIFO0_CLR 0x01u /* As defined by Register map */ + #define Timer_1_AUX_CTRL_FIFO1_CLR 0x02u /* As defined by Register map */ + #define Timer_1_AUX_CTRL_FIFO0_LVL 0x04u /* As defined by Register map */ + #define Timer_1_AUX_CTRL_FIFO1_LVL 0x08u /* As defined by Register map */ + #define Timer_1_STATUS_ACTL_INT_EN_MASK 0x10u /* As defined for the ACTL Register */ + +#endif /* Implementation Specific Registers and Register Constants */ + +#endif /* CY_Timer_v2_30_Timer_1_H */ + + +/* [] END OF FILE */ diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/Timer_1_PM.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Timer_1_PM.c new file mode 100644 index 0000000..897d3a7 --- /dev/null +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/Timer_1_PM.c @@ -0,0 +1,194 @@ +/******************************************************************************* +* File Name: Timer_1_PM.c +* Version 2.50 +* +* Description: +* This file provides the power management source code to API for the +* Timer. +* +* Note: +* None +* +******************************************************************************* +* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* You may use this file only in accordance with the license, terms, conditions, +* disclaimers, and limitations in the end user license agreement accompanying +* the software package with which this file was provided. +********************************************************************************/ + +#include "Timer_1.h" +static Timer_1_backupStruct Timer_1_backup; + + +/******************************************************************************* +* Function Name: Timer_1_SaveConfig +******************************************************************************** +* +* Summary: +* Save the current user configuration +* +* Parameters: +* void +* +* Return: +* void +* +* Global variables: +* Timer_1_backup: Variables of this global structure are modified to +* store the values of non retention configuration registers when Sleep() API is +* called. +* +*******************************************************************************/ +void Timer_1_SaveConfig(void) +{ + #if (!Timer_1_UsingFixedFunction) + /* Backup the UDB non-rentention registers for CY_UDB_V0 */ + #if (CY_UDB_V0) + Timer_1_backup.TimerUdb = Timer_1_ReadCounter(); + Timer_1_backup.TimerPeriod = Timer_1_ReadPeriod(); + Timer_1_backup.InterruptMaskValue = Timer_1_STATUS_MASK; + #if (Timer_1_UsingHWCaptureCounter) + Timer_1_backup.TimerCaptureCounter = Timer_1_ReadCaptureCount(); + #endif /* Backup the UDB non-rentention register capture counter for CY_UDB_V0 */ + #endif /* Backup the UDB non-rentention registers for CY_UDB_V0 */ + + #if (CY_UDB_V1) + Timer_1_backup.TimerUdb = Timer_1_ReadCounter(); + Timer_1_backup.InterruptMaskValue = Timer_1_STATUS_MASK; + #if (Timer_1_UsingHWCaptureCounter) + Timer_1_backup.TimerCaptureCounter = Timer_1_ReadCaptureCount(); + #endif /* Back Up capture counter register */ + #endif /* Backup non retention registers, interrupt mask and capture counter for CY_UDB_V1 */ + + #if(!Timer_1_ControlRegRemoved) + Timer_1_backup.TimerControlRegister = Timer_1_ReadControlRegister(); + #endif /* Backup the enable state of the Timer component */ + #endif /* Backup non retention registers in UDB implementation. All fixed function registers are retention */ +} + + +/******************************************************************************* +* Function Name: Timer_1_RestoreConfig +******************************************************************************** +* +* Summary: +* Restores the current user configuration. +* +* Parameters: +* void +* +* Return: +* void +* +* Global variables: +* Timer_1_backup: Variables of this global structure are used to +* restore the values of non retention registers on wakeup from sleep mode. +* +*******************************************************************************/ +void Timer_1_RestoreConfig(void) +{ + #if (!Timer_1_UsingFixedFunction) + /* Restore the UDB non-rentention registers for CY_UDB_V0 */ + #if (CY_UDB_V0) + /* Interrupt State Backup for Critical Region*/ + uint8 Timer_1_interruptState; + + Timer_1_WriteCounter(Timer_1_backup.TimerUdb); + Timer_1_WritePeriod(Timer_1_backup.TimerPeriod); + /* CyEnterCriticalRegion and CyExitCriticalRegion are used to mark following region critical*/ + /* Enter Critical Region*/ + Timer_1_interruptState = CyEnterCriticalSection(); + /* Use the interrupt output of the status register for IRQ output */ + Timer_1_STATUS_AUX_CTRL |= Timer_1_STATUS_ACTL_INT_EN_MASK; + /* Exit Critical Region*/ + CyExitCriticalSection(Timer_1_interruptState); + Timer_1_STATUS_MASK =Timer_1_backup.InterruptMaskValue; + #if (Timer_1_UsingHWCaptureCounter) + Timer_1_SetCaptureCount(Timer_1_backup.TimerCaptureCounter); + #endif /* Restore the UDB non-rentention register capture counter for CY_UDB_V0 */ + #endif /* Restore the UDB non-rentention registers for CY_UDB_V0 */ + + #if (CY_UDB_V1) + Timer_1_WriteCounter(Timer_1_backup.TimerUdb); + Timer_1_STATUS_MASK =Timer_1_backup.InterruptMaskValue; + #if (Timer_1_UsingHWCaptureCounter) + Timer_1_SetCaptureCount(Timer_1_backup.TimerCaptureCounter); + #endif /* Restore Capture counter register*/ + #endif /* Restore up non retention registers, interrupt mask and capture counter for CY_UDB_V1 */ + + #if(!Timer_1_ControlRegRemoved) + Timer_1_WriteControlRegister(Timer_1_backup.TimerControlRegister); + #endif /* Restore the enable state of the Timer component */ + #endif /* Restore non retention registers in the UDB implementation only */ +} + + +/******************************************************************************* +* Function Name: Timer_1_Sleep +******************************************************************************** +* +* Summary: +* Stop and Save the user configuration +* +* Parameters: +* void +* +* Return: +* void +* +* Global variables: +* Timer_1_backup.TimerEnableState: Is modified depending on the +* enable state of the block before entering sleep mode. +* +*******************************************************************************/ +void Timer_1_Sleep(void) +{ + #if(!Timer_1_ControlRegRemoved) + /* Save Counter's enable state */ + if(Timer_1_CTRL_ENABLE == (Timer_1_CONTROL & Timer_1_CTRL_ENABLE)) + { + /* Timer is enabled */ + Timer_1_backup.TimerEnableState = 1u; + } + else + { + /* Timer is disabled */ + Timer_1_backup.TimerEnableState = 0u; + } + #endif /* Back up enable state from the Timer control register */ + Timer_1_Stop(); + Timer_1_SaveConfig(); +} + + +/******************************************************************************* +* Function Name: Timer_1_Wakeup +******************************************************************************** +* +* Summary: +* Restores and enables the user configuration +* +* Parameters: +* void +* +* Return: +* void +* +* Global variables: +* Timer_1_backup.enableState: Is used to restore the enable state of +* block on wakeup from sleep mode. +* +*******************************************************************************/ +void Timer_1_Wakeup(void) +{ + Timer_1_RestoreConfig(); + #if(!Timer_1_ControlRegRemoved) + if(Timer_1_backup.TimerEnableState == 1u) + { /* Enable Timer's operation */ + Timer_1_Enable(); + } /* Do nothing if Timer was disabled before */ + #endif /* Remove this code section if Control register is removed */ +} + + +/* [] END OF FILE */ diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/bitstream.txt b/PSOC5_SPI_LSM303D.cydsn/codegentemp/bitstream.txt index a823340..497927c 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/bitstream.txt +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/bitstream.txt @@ -2,7 +2,7 @@ # IDMUX (count=6) 00000000: 00 00 00 00 00 00 # IOPORT_0 (count=7) -00000006: 60 40 00 00 00 00 00 +00000006: 40 40 00 00 00 00 00 # IOPINS0_0 (count=10) 0000000d: 01 00 00 61 60 00 60 00 00 00 # IOPINS1_0 + 0x0000000B (count=5) @@ -19,9 +19,9 @@ # IOPINS1_2 + 0x00000009 (count=5) 00000042: 00 00 00 00 00 # IOPORT_3 (count=7) -00000047: 03 89 00 00 00 00 00 +00000047: 9c 85 00 00 00 00 00 # IOPINS0_3 (count=10) -0000004e: 8f 00 00 8f 80 00 8f 00 00 00 +0000004e: 9f 00 00 9f 80 00 9f 00 00 00 # IOPINS1_3 + 0x0000000B (count=5) 00000058: 00 00 00 00 00 # IOPORT_4 (count=7) @@ -84,63 +84,63 @@ # CYDEV_PM_ACT_CFG2 (count=1) 000000ec: 03 # UDB_1_5_0_CONFIG (count=128) -000000ed: 00 00 01 00 01 01 00 00 52 00 80 00 00 00 01 00 -000000fd: 86 00 38 00 06 00 88 00 86 00 68 00 01 00 00 00 -0000010d: 01 00 00 00 01 00 00 00 00 00 fc 00 40 00 00 00 -0000011d: 1e 01 01 01 70 00 80 00 00 00 22 00 00 00 44 01 -0000012d: 04 00 00 00 00 00 00 51 30 ff 07 ff 40 20 f0 05 -0000013d: 08 00 00 00 40 00 00 00 04 04 04 04 11 01 00 00 -0000014d: 40 a8 40 20 00 00 00 00 00 00 00 00 00 00 00 00 +000000ed: a4 02 00 0d a4 12 00 24 00 12 00 28 80 0d 24 40 +000000fd: 02 00 0d 00 37 4d 48 00 13 10 80 20 a4 4d 00 00 +0000010d: 80 4d 00 00 24 4d 80 00 35 01 ca 32 00 00 24 00 +0000011d: 0f 0f 00 40 f0 30 10 40 20 00 02 22 00 00 40 04 +0000012d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0000013d: 00 00 00 00 09 00 00 00 04 04 00 04 00 00 00 00 +0000014d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000015d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # UDB_1_5_1_CONFIG (count=128) -0000016d: 30 00 4c 02 00 07 00 18 2c 2c d1 13 00 c0 00 00 -0000017d: 80 00 10 00 9c 00 22 80 00 21 03 0a 00 00 00 34 -0000018d: 14 00 00 09 00 c0 00 00 09 40 f0 00 00 00 00 00 -0000019d: 00 3f e0 00 1f 00 00 c0 00 80 08 00 00 00 00 40 -000001ad: 45 06 00 00 00 e0 0b 0c 16 ff ff ff 00 00 f0 44 -000001bd: 0c 00 00 00 00 00 00 00 04 04 04 00 01 01 00 00 -000001cd: 00 00 00 00 00 00 c0 00 00 00 40 02 00 00 00 00 +0000016d: 00 00 40 00 01 07 00 08 0c 09 33 06 18 00 26 00 +0000017d: 00 0c 00 03 e8 00 10 00 1b 0f 24 00 00 00 00 00 +0000018d: 00 00 00 00 80 00 00 00 80 00 00 00 80 00 00 00 +0000019d: 40 08 38 04 07 01 80 02 a0 aa 08 00 00 00 41 55 +000001ad: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +000001bd: 00 00 00 00 00 00 00 00 04 04 00 04 00 00 00 00 +000001cd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000001dd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # UDB_1_4_1_CONFIG (count=128) -000001ed: 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 -000001fd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000020d: 04 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 -0000021d: 02 00 00 00 04 00 01 00 00 00 00 00 00 00 11 00 +000001ed: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +000001fd: 00 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 +0000020d: 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 +0000021d: 00 00 01 00 02 00 00 00 00 00 00 00 00 00 10 00 0000022d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000023d: 00 00 00 00 01 00 00 00 04 00 00 04 00 10 00 00 +0000023d: 00 00 00 00 40 00 00 00 04 00 00 04 00 00 00 00 0000024d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000025d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # UDB_1_4_0_CONFIG (count=128) -0000026d: d4 00 20 00 07 08 08 11 18 19 21 00 00 11 00 08 -0000027d: 80 19 20 00 00 c8 05 37 28 5d 42 a2 05 01 00 0a -0000028d: 05 19 00 00 05 10 00 41 05 66 00 89 00 00 05 00 -0000029d: 00 20 00 c0 00 1c ff 03 00 00 c0 8c 00 00 00 01 -000002ad: 63 02 50 00 04 de fb 0c 1f ff ff ff 22 00 f0 0c -000002bd: 04 00 00 00 00 00 02 2c 04 04 04 04 00 00 00 00 +0000026d: 05 00 00 00 18 66 21 89 05 19 00 00 d4 11 20 08 +0000027d: 00 01 00 0a 28 c8 42 37 80 5d 20 a2 07 19 08 00 +0000028d: 05 19 00 00 00 08 05 11 05 00 00 00 00 10 05 41 +0000029d: ff 03 00 c0 00 1c 00 20 00 00 03 0e 00 00 00 40 +000002ad: 36 02 50 00 04 de fc 0b 1f ff ff ff 22 00 f0 0c +000002bd: 04 00 00 00 00 00 02 20 04 04 04 04 00 00 00 00 000002cd: 00 00 c0 00 40 01 10 11 c0 01 00 11 40 01 40 01 000002dd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # UDB_1_3_0_CONFIG (count=128) -000002ed: a4 00 00 00 24 8d 80 00 a4 42 00 38 02 0d 0d 80 -000002fd: 00 00 24 00 80 8d 00 00 13 10 80 00 00 8d 00 00 -0000030d: a4 8d 00 00 37 31 48 42 35 02 ca 64 80 02 24 0d -0000031d: 0f 80 00 0f f0 70 10 80 20 20 02 08 00 00 40 01 -0000032d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000033d: 00 00 00 00 09 00 00 00 04 04 00 04 00 00 00 00 -0000034d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +000002ed: 01 00 00 00 00 00 3c 00 06 01 28 00 26 00 08 00 +000002fd: 26 02 18 00 12 00 20 00 01 00 00 00 00 00 01 00 +0000030d: 01 00 00 00 00 00 00 00 01 00 00 00 00 00 01 00 +0000031d: 1e 00 01 02 00 01 20 01 00 00 02 00 00 00 44 44 +0000032d: 51 04 00 00 00 ec b0 00 0b ff ff ff 00 00 f0 44 +0000033d: 0c 00 00 00 01 00 00 00 04 04 04 04 11 11 00 00 +0000034d: 00 00 00 00 00 00 c0 00 00 00 40 02 00 00 00 00 0000035d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # UDB_1_3_1_CONFIG (count=128) -0000036d: 00 00 00 00 09 00 16 00 08 01 10 06 40 00 00 00 -0000037d: 00 04 00 03 65 00 02 00 0b 07 14 00 00 00 00 00 -0000038d: 00 00 20 00 40 00 00 00 03 00 1c 00 00 00 00 00 -0000039d: 20 04 07 01 18 02 40 00 80 2a 28 00 00 00 41 15 -000003ad: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -000003bd: 00 00 00 00 00 00 00 00 04 04 00 04 00 00 00 00 -000003cd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0000036d: 00 00 00 00 9c 21 22 0a 00 00 00 02 2c 00 d1 34 +0000037d: 30 c0 4c 00 00 00 03 09 80 00 10 80 00 00 00 00 +0000038d: 00 07 00 18 09 40 f0 00 14 2c 00 13 00 c0 00 00 +0000039d: 00 00 1f c0 e0 00 00 3f 00 08 20 00 00 00 00 04 +000003ad: 02 00 00 00 00 00 10 05 18 ff 07 ff 40 20 f0 05 +000003bd: 08 00 00 00 00 00 00 00 04 04 04 00 01 01 00 00 +000003cd: 40 a8 40 20 00 00 00 00 00 00 00 00 00 00 00 00 000003dd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # UDB_1_2_1_CONFIG (count=128) @@ -244,23 +244,23 @@ 000008dd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # UDB_1_0_0_CONFIG (count=128) -000008ed: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -000008fd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000090d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000091d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000092d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000093d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000094d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +000008ed: 00 00 00 00 01 00 08 00 00 00 00 00 00 00 00 00 +000008fd: 00 00 00 00 0f 00 00 00 00 00 00 00 02 00 18 00 +0000090d: 04 00 18 00 00 00 00 00 00 00 00 00 00 00 27 00 +0000091d: 10 00 08 00 07 00 20 00 00 00 08 00 00 00 01 00 +0000092d: 24 00 00 00 00 00 00 00 00 ff ff ff 00 00 00 01 +0000093d: 18 00 00 00 01 00 00 00 0b 00 0b 0b 09 99 00 00 +0000094d: 40 00 40 00 40 40 80 00 80 00 80 00 80 00 80 00 0000095d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # UDB_1_0_1_CONFIG (count=128) -0000096d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000097d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000098d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000099d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -000009ad: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -000009bd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -000009cd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0000096d: 00 00 00 00 00 02 00 00 00 00 00 00 00 00 00 00 +0000097d: 00 00 00 03 00 00 00 00 00 00 00 07 00 00 00 00 +0000098d: 00 00 00 00 00 06 00 00 00 00 00 00 00 00 00 05 +0000099d: 00 00 00 00 00 00 00 07 00 00 00 80 00 00 00 00 +000009ad: 64 00 00 00 00 ec 02 00 07 ff ff ff 00 83 03 01 +000009bd: 18 00 00 00 00 00 08 00 00 04 08 04 10 99 00 00 +000009cd: 40 00 40 00 40 40 80 00 80 00 80 00 80 00 80 00 000009dd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # UDB_1_1_1_CONFIG (count=128) @@ -331,7 +331,7 @@ # UWRK_B0_WRK_STATCTL_BITS + 0x00000070 (count=32) 00000d2d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -00000d3d: 00 00 0f 0f 00 00 00 00 00 00 00 00 00 00 00 00 +00000d3d: 00 00 00 0f 0f 00 00 00 00 00 00 00 00 00 00 00 # UWRK_B1_WRK_DP_BITS (count=64) 00000d4d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 @@ -341,7 +341,7 @@ # UWRK_B1_WRK_STATCTL_BITS + 0x00000070 (count=32) 00000d8d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -00000d9d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00000d9d: 00 00 00 00 0d 00 00 00 00 00 00 00 00 00 00 00 # DSISWITCH_0_0 (count=128) 00000dad: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 @@ -397,10 +397,10 @@ 0000102d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000103d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000104d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000105d: 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0000105d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000106d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000107d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000108d: 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 +0000108d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000109d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # DSISWITCH_0_3 (count=128) @@ -414,13 +414,13 @@ 0000111d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # DSI0_3_HV_ROUTING + 0x00000080 (count=128) -0000112d: 00 00 00 00 00 00 00 00 00 00 80 00 00 00 00 00 -0000113d: 00 00 00 00 00 00 00 00 00 00 00 00 04 00 80 00 -0000114d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40 00 +0000112d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0000113d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0000114d: 00 00 00 00 00 00 00 00 00 00 00 10 00 00 00 00 0000115d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000116d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000117d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000118d: 00 00 00 00 04 00 00 00 00 00 00 00 00 00 00 00 +0000118d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000119d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # DSISWITCH_0_4 (count=128) @@ -435,7 +435,7 @@ # DSI0_4_HV_ROUTING + 0x00000080 (count=128) 0000122d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000123d: 00 00 00 00 00 00 00 00 00 00 40 00 04 00 80 00 +0000123d: 00 00 00 00 00 00 00 00 00 00 00 10 00 00 00 00 0000124d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000125d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000126d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 @@ -444,22 +444,22 @@ 0000129d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # DSISWITCH_0_5 (count=128) -000012ad: 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 00 +000012ad: 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 000012bd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000012cd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000012dd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000012ed: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -000012fd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000130d: 00 00 00 00 04 00 80 00 00 00 00 00 00 00 00 00 +000012fd: 00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 +0000130d: 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 0000131d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # DSI0_5_HV_ROUTING + 0x00000080 (count=128) -0000132d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0000132d: 00 01 00 00 04 00 00 00 00 00 00 00 00 00 00 00 0000133d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000134d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000135d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000136d: 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000137d: 00 00 00 00 00 00 01 00 01 00 00 00 00 00 00 00 +0000137d: 00 00 00 00 00 00 02 00 01 00 00 00 00 00 00 00 0000138d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000139d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 @@ -484,22 +484,22 @@ 0000149d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # UDBSWITCH_1_0 (count=128) -000014ad: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -000014bd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -000014cd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -000014dd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -000014ed: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -000014fd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000150d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000151d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +000014ad: 04 00 00 00 00 00 00 00 00 00 12 00 00 00 00 00 +000014bd: 82 00 00 00 00 00 00 00 04 00 52 10 00 00 00 00 +000014cd: 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 12 +000014dd: 00 00 00 00 00 00 20 01 00 00 00 00 00 08 00 00 +000014ed: 04 00 80 00 00 00 80 00 00 00 00 00 00 0a 00 20 +000014fd: 00 00 00 00 80 00 80 00 00 0a 40 00 80 00 00 00 +0000150d: 00 00 00 00 01 00 00 02 00 00 00 00 00 00 00 00 +0000151d: 02 00 00 00 00 00 00 00 01 00 00 00 00 00 00 01 # UDB_2_0_HV_ROUTING + 0x00000080 (count=128) 0000152d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000153d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000154d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0000153d: 00 00 00 20 00 00 00 00 80 00 00 00 00 00 00 01 +0000154d: 00 04 20 02 00 00 00 00 00 00 00 00 00 00 00 00 0000155d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000156d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000157d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0000156d: 04 00 05 00 09 00 00 00 00 00 50 00 a0 00 40 00 +0000157d: 85 00 20 00 00 00 1b 00 10 00 00 00 00 00 11 00 0000158d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000159d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 @@ -535,12 +535,12 @@ # UDB_2_1_HV_ROUTING + 0x00000080 (count=128) 0000172d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000173d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000174d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000175d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0000173d: 00 00 00 20 00 00 00 00 80 00 00 00 00 00 00 01 +0000174d: 00 04 20 02 00 00 00 00 00 00 00 00 00 00 00 00 +0000175d: 00 00 00 00 80 00 00 00 00 00 00 00 00 00 00 00 0000176d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000177d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000178d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0000178d: 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 0000179d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # UDBSWITCH_0_2 (count=128) @@ -560,7 +560,7 @@ 0000185d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000186d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000187d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000188d: 00 00 00 00 00 00 00 00 00 00 00 00 80 00 00 00 +0000188d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000189d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # UDBSWITCH_1_2 (count=128) @@ -575,9 +575,9 @@ # UDB_2_2_HV_ROUTING + 0x00000080 (count=128) 0000192d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000193d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000194d: 00 00 00 00 00 00 00 00 00 00 00 00 00 84 00 00 -0000195d: 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0000193d: 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 01 +0000194d: 00 04 20 02 00 00 00 00 00 00 00 00 00 00 00 00 +0000195d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000196d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000197d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000198d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 @@ -600,27 +600,27 @@ 00001a5d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00001a6d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00001a7d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -00001a8d: 00 00 00 00 20 00 00 00 00 00 08 00 00 00 00 00 +00001a8d: 00 00 00 00 00 00 00 00 00 00 04 00 00 00 00 00 00001a9d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # UDBSWITCH_1_3 (count=128) -00001aad: 40 14 00 40 00 10 00 21 00 08 a4 00 00 00 24 00 -00001abd: 00 40 00 26 40 20 00 04 40 60 04 00 80 10 21 10 -00001acd: 02 24 01 00 20 00 22 00 00 a0 02 20 00 00 00 00 -00001add: 08 20 00 40 00 00 10 01 00 44 00 10 00 00 10 00 -00001aed: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -00001afd: 00 00 00 00 00 00 00 00 00 04 22 80 00 00 00 00 -00001b0d: 00 40 00 00 00 00 00 00 00 00 00 00 00 00 10 05 +00001aad: 20 22 20 01 04 00 00 01 20 00 40 22 00 00 60 08 +00001abd: 88 40 00 00 00 20 00 08 00 48 40 02 04 00 20 10 +00001acd: 00 40 24 08 00 40 00 20 00 00 00 00 42 00 00 1a +00001add: 00 01 00 00 00 00 28 01 00 00 10 00 00 80 90 04 +00001aed: 00 40 00 01 00 00 00 20 12 01 00 00 00 00 00 00 +00001afd: 00 10 00 00 00 04 10 04 00 61 08 00 00 00 00 00 +00001b0d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00001b1d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # UDB_2_3_HV_ROUTING + 0x00000080 (count=128) -00001b2d: 00 00 00 00 00 00 20 00 40 00 01 00 10 00 00 00 -00001b3d: 00 74 80 14 40 00 00 20 40 04 02 e2 00 20 00 00 -00001b4d: 08 08 00 20 01 00 02 00 00 00 00 00 00 00 00 02 +00001b2d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00001b3d: 00 40 10 06 00 00 00 00 60 02 00 00 00 08 80 00 +00001b4d: 88 00 08 08 00 00 10 00 00 00 00 02 00 00 00 20 00001b5d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -00001b6d: ef 00 6e 00 7f 00 00 00 00 00 0f 00 ae 00 2e 00 -00001b7d: 00 00 00 00 00 00 0f 00 08 00 00 00 00 00 00 00 -00001b8d: 00 00 00 00 00 00 c0 00 00 00 08 00 00 00 00 00 +00001b6d: af 00 7f 00 6b 00 00 00 00 00 f0 00 e1 00 74 00 +00001b7d: 29 00 08 00 00 00 0f 00 00 00 00 00 00 00 00 00 +00001b8d: 00 00 00 00 00 00 00 00 00 00 04 00 00 00 00 00 00001b9d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # UDBSWITCH_0_4 (count=128) @@ -644,23 +644,23 @@ 00001c9d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # UDBSWITCH_1_4 (count=128) -00001cad: 04 20 00 80 00 00 40 00 00 00 0a a0 00 00 00 00 -00001cbd: 08 44 00 02 10 01 00 00 00 00 00 80 00 00 09 01 -00001ccd: 14 10 54 b4 00 00 00 00 00 20 06 00 00 00 00 00 -00001cdd: 00 00 55 20 00 00 00 00 00 54 00 00 00 00 00 00 -00001ced: 14 00 00 02 00 00 00 00 01 26 00 00 00 00 00 00 -00001cfd: 00 28 44 40 00 00 00 00 00 00 00 00 00 81 18 00 -00001d0d: 40 00 00 00 00 00 00 00 0c 54 02 40 00 00 00 00 -00001d1d: 00 00 02 02 00 00 00 00 00 00 00 00 00 00 00 00 +00001cad: 60 06 00 00 00 00 00 00 40 08 00 08 00 00 20 00 +00001cbd: 88 40 20 00 00 00 04 00 40 00 00 00 00 00 10 20 +00001ccd: 00 28 42 10 00 00 00 00 20 02 42 00 00 00 00 00 +00001cdd: 80 28 02 08 00 00 00 00 08 5c 00 04 00 00 00 00 +00001ced: 08 24 00 02 00 00 00 00 01 14 00 12 00 00 00 00 +00001cfd: 00 00 5c 04 00 00 00 00 00 00 00 00 00 00 00 00 +00001d0d: 00 00 00 02 00 08 10 02 9c d0 08 00 00 00 00 00 +00001d1d: 00 00 02 00 00 00 00 00 00 00 00 00 20 00 04 00 # UDB_2_4_HV_ROUTING + 0x00000080 (count=128) -00001d2d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 -00001d3d: 00 01 10 00 00 44 03 96 50 80 00 00 00 22 00 02 -00001d4d: 00 00 00 00 04 20 00 00 00 00 00 00 00 00 00 00 -00001d5d: 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 -00001d6d: 1e 00 0f 00 3f 00 00 00 00 00 07 00 0f 00 0e 00 -00001d7d: 07 00 0c 00 00 00 f0 00 01 00 00 00 00 00 00 00 -00001d8d: 00 00 00 00 00 00 10 00 00 00 40 00 00 00 00 00 +00001d2d: 00 00 00 00 00 00 00 00 48 00 00 00 00 00 00 00 +00001d3d: 08 00 00 00 00 80 80 10 00 00 00 00 28 16 c2 00 +00001d4d: 01 00 20 01 8c 20 02 00 00 21 00 08 00 00 00 00 +00001d5d: 00 00 00 00 00 00 80 40 00 00 00 00 00 00 00 00 +00001d6d: 0f 00 27 00 4f 00 00 00 00 00 0b 00 0f 00 0e 00 +00001d7d: 07 00 0c 00 00 00 00 00 78 00 00 00 00 00 00 00 +00001d8d: 00 00 00 00 00 00 00 00 00 00 50 00 00 00 00 00 00001d9d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # UDBSWITCH_0_5 (count=128) @@ -680,27 +680,27 @@ 00001e5d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00001e6d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00001e7d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -00001e8d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00001e8d: 0c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00001e9d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # UDBSWITCH_1_5 (count=128) -00001ead: 09 42 00 08 00 10 80 00 00 04 56 00 12 00 28 00 -00001ebd: 02 04 08 02 00 00 40 20 10 90 4c 20 00 00 28 08 -00001ecd: 00 00 08 60 00 00 00 81 00 00 00 00 00 00 00 68 -00001edd: 00 00 00 00 40 20 08 80 08 00 00 00 00 00 c1 14 -00001eed: 00 00 00 01 00 00 80 00 00 00 00 00 00 01 04 40 -00001efd: 06 00 00 00 00 04 40 00 00 00 00 00 00 00 00 00 -00001f0d: 11 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00001ead: 48 02 00 00 04 10 80 02 48 00 48 00 00 20 20 00 +00001ebd: 10 02 42 10 00 40 00 14 08 40 48 01 04 00 20 42 +00001ecd: 02 09 20 00 00 00 80 68 38 00 02 00 00 00 00 00 +00001edd: c8 00 20 00 00 00 10 01 48 82 00 10 00 00 14 00 +00001eed: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00001efd: 00 00 00 00 00 00 00 00 01 24 80 00 00 00 00 00 +00001f0d: 00 40 00 00 00 00 00 00 00 00 00 00 00 40 14 15 00001f1d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # UDB_2_5_HV_ROUTING + 0x00000080 (count=128) -00001f2d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00001f2d: 04 00 00 00 01 08 00 02 00 00 00 40 04 00 00 22 00001f3d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00001f4d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00001f5d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -00001f6d: 5f 00 7f 00 5f 00 00 00 00 00 e0 00 70 00 f2 00 -00001f7d: 81 00 30 00 00 00 00 00 0e 00 00 00 00 00 00 00 -00001f8d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +00001f6d: fd 00 6f 00 ef 00 00 00 00 00 07 00 ae 00 6f 00 +00001f7d: 00 00 00 00 00 00 0f 00 08 00 00 00 00 00 00 00 +00001f8d: 0c 00 00 00 00 00 90 00 00 00 00 00 00 00 00 00 00001f9d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # DSISWITCH_1_0 (count=128) @@ -737,7 +737,7 @@ 0000212d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000213d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000214d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000215d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0000215d: 00 00 00 00 00 80 00 00 00 00 00 00 00 00 00 00 0000216d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000217d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000218d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 @@ -746,7 +746,7 @@ # DSISWITCH_1_2 (count=128) 000021ad: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000021bd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -000021cd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +000021cd: 00 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000021dd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000021ed: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000021fd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 @@ -758,7 +758,7 @@ 0000223d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000224d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000225d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000226d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0000226d: 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 0000227d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000228d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000229d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 @@ -774,13 +774,13 @@ 0000231d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # DSI3_3_HV_ROUTING + 0x00000080 (count=128) -0000232d: 00 00 00 00 80 00 00 00 00 00 00 10 80 00 00 00 -0000233d: 00 00 00 00 00 00 00 10 00 00 00 00 80 00 00 00 -0000234d: 00 00 00 00 80 00 00 00 00 00 00 00 00 00 00 00 +0000232d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0000233d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0000234d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 04 0000235d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000236d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000237d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000238d: 00 00 00 00 00 00 40 00 00 00 00 00 00 00 00 00 +0000238d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 00 0000239d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # DSISWITCH_1_4 (count=128) @@ -794,13 +794,13 @@ 0000241d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # DSI3_4_HV_ROUTING + 0x00000080 (count=128) -0000242d: 00 00 00 00 00 00 00 00 00 00 00 00 08 00 00 00 -0000243d: 00 00 00 00 00 00 00 10 00 00 00 00 80 00 00 00 -0000244d: 00 00 00 00 88 00 00 00 00 00 00 00 00 00 00 00 -0000245d: 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 00 +0000242d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0000243d: 00 00 00 00 00 00 00 08 00 00 00 00 00 00 00 00 +0000244d: 00 00 00 00 00 00 00 00 80 00 00 00 00 00 00 00 +0000245d: 00 00 00 00 00 00 00 82 00 00 00 00 00 00 00 00 0000246d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000247d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000248d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0000248d: 00 00 00 00 00 00 00 00 00 00 20 00 00 00 00 00 0000249d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # DSISWITCH_1_5 (count=128) @@ -809,23 +809,23 @@ 000024cd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000024dd: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 000024ed: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -000024fd: 08 00 00 00 80 00 00 00 80 00 00 00 00 00 00 10 -0000250d: 00 00 00 08 00 00 00 00 00 00 00 00 00 00 00 00 +000024fd: 80 00 00 02 00 00 00 80 00 00 00 00 00 00 00 82 +0000250d: 00 00 00 00 00 00 00 08 00 00 00 00 00 00 00 00 0000251d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # DSI3_5_HV_ROUTING + 0x00000080 (count=128) -0000252d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +0000252d: 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00 80 0000253d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000254d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000255d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000256d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -0000257d: 00 00 00 00 e0 00 20 00 40 00 00 00 00 00 00 00 +0000257d: 00 00 00 00 e0 00 a0 00 80 00 00 00 00 00 00 00 0000258d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000259d: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 # UCFG_BCTL1 (count=16) -000025ad: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +000025ad: 02 01 10 00 00 00 00 00 00 00 02 01 00 00 00 00 # UCFG_BCTL0 (count=16) -000025bd: 03 00 10 00 00 00 00 00 03 00 01 00 00 00 00 00 +000025bd: 03 00 10 00 00 00 00 00 01 00 03 00 00 00 00 00 diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cm3gcc.ld b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cm3gcc.ld index 6b98ccb..34c064c 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cm3gcc.ld +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cm3gcc.ld @@ -34,7 +34,6 @@ EXTERN(__cs3_reset Reset) EXTERN(__cs3_start_asm __cs3_start_asm_generic_m) /* Bring in the interrupt routines & vector */ INCLUDE micro-names.inc -EXTERN(__cs3_interrupt_vector_micro) EXTERN(__cs3_start_c main __cs3_stack __cs3_heap_end) /* Provide fall-back values */ @@ -50,10 +49,11 @@ SECTIONS .text : { CREATE_OBJECT_SYMBOLS - __cs3_interrupt_vector = __cs3_interrupt_vector_micro; + PROVIDE(__cs3_interrupt_vector = RomVectors); + *(.romvectors) *(.cs3.interrupt_vector) /* Make sure we pulled in an interrupt vector. */ - ASSERT (. != __cs3_interrupt_vector_micro, "No interrupt vector"); + ASSERT (. != __cs3_interrupt_vector, "No interrupt vector"); PROVIDE(__cs3_reset = Reset); *(.cs3.reset) @@ -133,7 +133,7 @@ SECTIONS __cs3_regions = .; LONG (0) LONG (__cs3_region_init_ram) - LONG (__cs3_region_start_ram) + LONG (__cs3_region_start_data) LONG (__cs3_region_init_size_ram) LONG (__cs3_region_zero_size_ram) __cs3_regions_end = .; @@ -142,13 +142,23 @@ SECTIONS _etext = .; } >rom - .data : ALIGN(8) + .ramvectors (NOLOAD) : ALIGN(8) { __cs3_region_start_ram = .; *(.cs3.region-head.ram) ASSERT (. == __cs3_region_start_ram, ".cs3.region-head.ram not permitted"); - *(.ramvectors) - + KEEP(*(.ramvectors)) + } + + .noinit (NOLOAD) : ALIGN(8) + { + KEEP(*(.noinit)) + } + + .data : ALIGN(8) + { + __cs3_region_start_data = .; + KEEP(*(.jcr)) *(.got.plt) *(.got) *(.shdata) @@ -167,12 +177,14 @@ SECTIONS _end = .; __end = .; } >ram AT>rom + __cs3_region_end_ram = __cs3_region_start_ram + LENGTH(ram); __cs3_region_size_ram = LENGTH(ram); __cs3_region_init_ram = LOADADDR (.data); __cs3_region_init_size_ram = _edata - ADDR (.data); __cs3_region_zero_size_ram = _end - _edata; + .stab 0 (NOLOAD) : { *(.stab) } .stabstr 0 (NOLOAD) : { *(.stabstr) } /* DWARF debug sections. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/config.hex b/PSOC5_SPI_LSM303D.cydsn/codegentemp/config.hex index ac0200d..6cb0389 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/config.hex +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/config.hex @@ -1,100 +1,130 @@ -:200000000000010001010000520080000000010086003800060088008600680001000000CF -:2000200001000000010000000000FC00400000001E0101017000800000002200000044010A -:20004000040000000000005130FF07FF4020F0050800000040000000040404041101000057 -:2000600040A840200000000000000000000000000000000000000000000000000000000038 -:2000800030004C02000700182C2CD11300C00000800010009C0022800021030A0000003497 -:2000A0001400000900C000000940F00000000000003FE0001F0000C0008008000000004064 -:2000C0004506000000E00B0C16FFFFFF0000F0440C0000000000000004040400010100007D -:2000E000000000000000C000000040020000000000000000000000000000000000000000FE -:200100000000010000000000000000000000000000000000000000000000000000000000DE -:200120000400000002000000000000000000000002000000040001000000000000001100A1 -:20014000000000000000000000000000000000000000000001000000040000040010000086 +:20000000A402000DA412002400120028800D244002000D00374D480013108020A44D000099 +:20002000804D0000244D80003501CA32000024000F0F0040F0301040200002220000400456 +:2000400000000000000000000000000000000000000000000900000004040004000000008B +:20006000000000000000000000000000000000000000000000000000000000000000000080 +:2000800000004000010700080C09330618002600000C0003E80010001B0F2400000000002F +:2000A000000000008000000080000000800000004008380407018002A0AA080000004155CA +:2000C000000000000000000000000000000000000000000000000000040400040000000014 +:2000E000000000000000000000000000000000000000000000000000000000000000000000 +:200100000000000000000000000000000000000000000000020000000000000000000000DD +:200120000000000000000000000001000000000000000100020000000000000000001000AB +:20014000000000000000000000000000000000000000000040000000040000040000000057 :2001600000000000000000000000000000000000000000000000000000000000000000007F -:20018000D40020000708081118192100001100088019200000C80537285D42A20501000AA2 -:2001A00005190000051000410566008900000500002000C0001CFF030000C08C0000000187 -:2001C0006302500004DEFB0C1FFFFFFF2200F00C040000000000022C040404040000000005 +:20018000050000001866218905190000D41120080001000A28C84237805D20A207190800CC +:2001A00005190000000805110500000000100541FF0300C0001C00200000030E0000004059 +:2001C0003602500004DEFC0B1FFFFFFF2200F00C040000000000022004040404000000003E :2001E0000000C00040011011C0010011400140010000000000000000000000000000000089 -:20020000A4000000248D8000A4420038020D0D8000002400808D000013108000008D0000EE -:20022000A48D0000373148423502CA648002240D0F80000FF070108020200208000040016A -:20024000000000000000000000000000000000000000000009000000040400040000000089 -:2002600000000000000000000000000000000000000000000000000000000000000000007E -:200280000000000009001600080110064000000000040003650002000B071400000000004C -:2002A000000020004000000003001C00000000002004070118024000802A28000000411511 -:2002C000000000000000000000000000000000000000000000000000040400040000000012 -:2002E0000000000000000000000000000000000000000000000000000000000000000000FE -:200300000000000000000000000000000000000000000F0F000000000000000000000000BF -:200320000000000000000000000000000000000000000000000000000000000000000000BD -:20034000000000000000000000000000000000000400000000000000000000000000000099 -:2003600000000000000000000000000000000000000000000000000000000000000000007D -:2003800000000000000000000000000001000000000000000000000000000000000000005C -:2003A000000000000000000000008000000000000000000000000000000000000400800039 -:2003C0000000000000000000000000000000400000000000000000000000000000000000DD -:2003E0000000000000000000000000000000000000000000000000000000000000000000FD -:200400000000000004000000000000000000000000000000000000000000000000000000D8 -:200420000000000000000000000000000000000000000000000000000000400004008000F8 +:200200000100000000003C00060128002600080026021800120020000100000000000100D0 +:20022000010000000000000001000000000001001E000102000120010000020000004444EE +:200240005104000000ECB0000BFFFFFF0000F0440C00000001000000040404041111000032 +:20026000000000000000C0000000400200000000000000000000000000000000000000007C +:20028000000000009C21220A000000022C00D13430C04C00000003098000108000000000EA +:2002A000000700180940F000142C001300C0000000001FC0E000003F0008200000000004A9 +:2002C000020000000000100518FF07FF4020F005080000000000000004040400010100007F +:2002E00040A8402000000000000000000000000000000000000000000000000000000000B6 +:2003000000000000010008000000000000000000000000000F0000000000000002001800AB +:20032000040018000000000000000000000027001000080007002000000008000000010032 +:20034000240000000000000000FFFFFF0000000118000000010000000B000B0B099900009F +:200360004000400040408000800080008000800000000000000000000000000000000000FD +:20038000000000000002000000000000000000000000000300000000000000070000000051 +:2003A0000000000000060000000000000000000500000000000000070000008000000000AB +:2003C0006400000000EC020007FFFFFF008303011800000000000800000408041099000067 +:2003E00040004000404080008000800080008000000000000000000000000000000000007D +:20040000000000000000000000000000000000000000000F0F0000000000000000000000BE +:2004200000000000000000000000000000000000000000000D0000000000000000000000AF :2004400000000000000000000000000000000000000000000000000000000000000000009C -:2004600000000000000000000000000000000000000000000000000000000000000000007C +:2004600000000000000000000000001000000000000000000000000000000000000000006C :2004800000000000000000000000000000000000000000000000000000000000000000005C -:2004A0000000400000000000000000000000000000000000000000000000000000000000FC -:2004C00000000000000000000000000000000000000000000000000000000000000000001C +:2004A00000000000000000000000000000000000000000000000000000000000000000003C +:2004C00000000000000000000000000000000000000000000000000000000010000000000C :2004E0000000000000000000000000000000000000000000000000000000000000000000FC -:20050000000000000400800000000000000000000000000000000000000000000000000057 +:200500000000000000000000000000000000000000000000000000000000000000000000DB :200520000000000000000000000000000000000000000000000000000000000000000000BB -:2005400000000000000000000000000000000000000000000000000000000000000000009B -:20056000080000000000000000000000000000000000000000000100010000000000000071 -:2005800000000000000000000000000000000000000000000000000000000000000000005B -:2005A00000000000000000000000000000000000000000000000000000000000000000003B -:2005C00000000000000000000000000000000000000000000000000000000000000000001B +:2005400000000010000000000000000000000000000000000000000000000000000000008B +:2005600000000000000000000000000000000000000000000000000000000000000000007B +:20058000000000000000000000000000000000000000000000000000040000000000000057 +:2005A00000000000000100000000000000000000000000000000000000000000000000003A +:2005C000000100000400000000000000000000000000000000000000000000000000000016 :2005E0000000000000000000000000000000000000000000000000000000000000000000FB -:2006000000000000000000000000000080000000000000000000000000000000000000005A +:200600000800000000000000000000000000000000000000000002000100000000000000CF :200620000000000000000000000000000000000000000000000000000000000000000000BA -:200640000000000000000000000000000084000000200000000000000000000000000000F6 -:2006600000000000000000000000000000000000000000000000000000000000000000007A -:2006800000000000000000000000000000000000000000000000000000000000000000005A -:2006A00000000000000000000000000000000000000000000000000000000000000000003A -:2006C00000000000000000000000000000000000000000000000000000000000000000001A -:2006E0000000000000000000000000000000000000000000000000000000000000000000FA -:200700000000000020000000000008000000000000000000000000000000000000000000B1 -:2007200040140040001000210008A4000000240000400026402000044060040080102110F5 -:20074000022401002000220000A00220000000000820004000001001004400100000100091 -:200760000000000000000000000000000000000000000000000000000004228000000000D3 -:20078000004000000000000000000000000010050000000000000000000000000000000004 -:2007A000000000000000200040000100100000000074801440000020400402E20020000018 -:2007C0000808002001000200000000000000000200000000000000000000000000000000E4 -:2007E000EF006E007F00000000000F00AE002E000000000000000F0008000000000000001B -:20080000000000000000C00000000800000000000000000000000000000000000000000010 -:20082000042000800000400000000AA0000000000844000210010000000000800000090141 -:20084000141054B4000000000020060000000000000055200000000000540000000000007D -:200860001400000200000000012600000000000000284440000000000000000000811800F6 -:2008800040000000000000000C540240000000000000020200000000000000000000000072 -:2008A000000000000000000000000000000002000001100000440396508000000022000254 -:2008C0000000000004200000000000000000000000000000000000010000000000000000F3 -:2008E0001E000F003F000000000007000F000E0007000C000000F000010000000000000064 -:20090000000000000000100000004000000000000000000000000000000000000000000087 -:2009200009420008001080000004560012002800020408020000402010904C200000280894 -:20094000000008600000008100000000000000680000000040200880080000000000C11481 -:20096000000000010000800000000000000104400600000000044000000000000000000067 -:20098000112000000000000000000000000000000000000000000000000000000000000026 -:2009A000000000000000000000000000000000000000000000000000000000000000000037 -:2009C000000000000000000000000000000000000000000000000000000000000000000017 -:2009E0005F007F005F0000000000E0007000F20081003000000000000E00000000000000B9 -:200A00000000000000000000000000000000000000000000000000000000000000000000D6 -:200A2000000000008000000000000010800000000000000000000010000000008000000016 -:200A4000000000008000000000000000000000000000000000000000000000000000000016 -:200A6000000000000000000000000000000000000000000000000000000000000000000076 -:200A8000000000000000400000000000000000000000000000000000000000000000000016 -:200AA00000000000000000000000000008000000000000000000001000000000800000009E -:200AC00000000000880000000000000000000000000000000000000400000000000000008A +:2006400004000000000000000000120000000000820000000000000004005210000000009C +:2006600000000000000000010000000000000012000000000000200100000000000800003E +:20068000040080000000800000000000000A00200000000080008000000A40008000000062 +:2006A000000000000100000200000000000000000200000000000000010000000000000133 +:2006C000000000000000000000000000000000000000002000000000800000000000000179 +:2006E0000004200200000000000000000000000000000000000000000000000000000000D4 +:20070000040005000900000000005000A00040008500200000001B001000000000001100B6 +:200720000000000000000000000000000000000000000000000000000000000000000000B9 +:200740000000000000000000000000000000000000000020000000008000000000000001F8 +:200760000004200200000000000000000000000000000000800000000000000000000000D3 +:20078000000000000000000000000000000000000000000000000000000000000000000059 +:2007A000000000000000000010000000000000000000000000000000000000000000000029 +:2007C0000000000000000000000000000000000000000020000000000000000000000001F8 +:2007E0000004200200000000000000000000000000000000000000000000000000000000D3 +:200800000000000000000000000000000000000000000000000000000000000000000000D8 +:200820000000000000000000000000000000000000000000000000000000000000000000B8 +:20084000000000000000000000000000000000000000000000000000000000000000000098 +:20086000000000000000000000000000000000000000000000000000000000000000000078 +:20088000000000000000000000000000000000000000000000000000000000000000000058 +:2008A000000000000000000000000400000000000000000000000000000000000000000034 +:2008C000202220010400000120004022000060088840000000200008004840020400201018 +:2008E0000040240800400020000000004200001A0001000000002801000010000080900482 +:200900000040000100000020120100000000000000100000000410040061080000000000D2 +:200920000000000000000000000000000000000000000000000000000000000000000000B7 +:20094000000000000000000000000000000000000040100600000000600200000008800057 +:200960008800080800001000000000020000002000000000000000000000000000000000AD +:20098000AF007F006B0000000000F000E10074002900080000000F00000000000000000039 +:2009A000000000000000000000000400000000000000000000000000000000000000000033 +:2009C0006006000000000000400800080000200088402000000004004000000000001020E5 +:2009E000002842100000000020024200000000008028020800000000085C000400000000FF +:200A00000824000200000000011400120000000000005C0400000000000000000000000021 +:200A200000000002000810029CD00800000000000000020000000000000000002000040000 +:200A4000000000000000000048000000000000000800000000808010000000002816C20036 +:200A6000010020018C200200002100080000000000000000000080400000000000000000BD +:200A80000F0027004F00000000000B000F000E0007000C000000000078000000000000001E +:200AA0000000000000000000000050000000000000000000000000000000000000000000E6 +:200AC000000000000000000000000000000000000000000000000000000000000000000016 :200AE0000000000000000000000000000000000000000000000000000000000000000000F6 :200B00000000000000000000000000000000000000000000000000000000000000000000D5 -:200B20000000000000000000000000000000000000000000000000000000000000000000B5 -:200B4000000000000000000000000000000000000000000000000000000000000000000095 -:200B600000000000000000000000000000000000080000008000000080000000000000105D -:200B800000000008000000000000000000000000000000000000000000000000000000004D -:200BA000000000000000000000000000000000000000000000000000000000000000000035 -:200BC000000000000000000000000000000000000000000000000000000000000000000015 -:200BE0000000000000000000000000000000000000000000E00020004000000000000000B5 -:200C00000000000000000000000000000000000000000000000000000000000000000000D4 -:200C200003001000000000000300010000000000010000616000600000000000007F7F007D -:200C4000000000008F00008F80008F0000000000604000000000000003890000000000003B +:200B20000C00000000000000000000000000000000000000000000000000000000000000A9 +:200B4000480200000410800248004800002020001002421000400014084048010400204236 +:200B600002092000000080683800020000000000C800200000001001488200100000140041 +:200B80000000000000000000000000000000000000000000000000000124800000000000B0 +:200BA00000400000000000000000000000401415000000000000000000000000000000008C +:200BC0000400000001080002000000400400002200000000000000000000000000000000A0 +:200BE0000000000000000000000000000000000000000000000000000000000000000000F5 +:200C0000FD006F00EF00000000000700AE006F000000000000000F0008000000000000003E +:200C20000C0000000000900000000000000000000000000000000000000000000000000018 +:200C4000000000000000000000000000000000000000000000000000000000000000000094 +:200C60000000000000000000000000000000000000000000008000000000000000000000F4 +:200C8000000000000000000000000000000000000000000000000000000000000000000054 +:200CA000000000000000000000000000000000000000000000000000000000000000000034 +:200CC000000000000000000000000000000000000000000000000000000000000000000014 +:200CE000008000000000000000000000000000000000000000000000000000000000000074 +:200D00000000000000000000000000000000000000000000000000000000000000000000D3 +:200D20000000000000000000000000000000000000000000000000000000000000000000B3 +:200D4000000000000000000000000000000000000000000000000000000000000000000093 +:200D6000000000000000000000000000000000000000000000000000000000000000000073 +:200D8000000000000000000010000000000000000000000000000000000000000000000043 +:200DA000000000000000000000000000000000000000000000000000000000000000000033 +:200DC000000000000000000000000000000000000000000000000000000000000000000013 +:200DE0000000000000000000000000000000000400000000000000000000000000000000EF +:200E00000000000000000000000000000000000000000000000000000000000000000000D2 +:200E20000000000000000000000000000000100000000000000000000000000000000000A2 +:200E400000000000000000000000000000000000000000000000000800000000000000008A +:200E6000000000000000000080000000000000000000000000000082000000000000000070 +:200E8000000000000000000000000000000000000000000000000000000000000000000052 +:200EA000000000000000000000002000000000000000000000000000000000000000000012 +:200EC000000000000000000000000000000000000000000000000000000000000000000012 +:200EE0000000000000000000000000000000000000000000000000000000000000000000F2 +:200F000000000000000000000000000000000000800000020000008000000000000000824D +:200F20000000000000000008000000000000000000000000000000000000000000000000A9 +:200F400000000000000000000000000200000080000000000000000000000000000000000F +:200F6000000000000000000000000000000000000000000000000000000000000000000071 +:200F80000000000000000000000000000000000000000000E000A000800000000000000051 +:200FA000000000000000000000000000000000000000000000000000000000000000000031 +:200FC0000201100000000000000002010000000003001000000000000100030000000000E4 +:200FE000010000616000600000000000007F7F00000000009F00009F80009F000000000074 +:2010000040400000000000009C85000000000000000000000000000000000000000000002F :00000001FF diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/core_cm3_psoc5.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/core_cm3_psoc5.h index 7195e81..0809bd6 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/core_cm3_psoc5.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/core_cm3_psoc5.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: core_cm3_psoc5.h -* Version 3.30 +* Version 3.40 * * Description: * Provides important type information for the PSoC5. This includes types @@ -11,7 +11,7 @@ * System Reference Guide provided with PSoC Creator. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyPm.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyPm.c index d8f87b1..c9c2f3b 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyPm.c +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyPm.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: cyPm.c -* Version 3.30 +* Version 3.40 * * Description: * Provides an API for the power management. @@ -10,7 +10,7 @@ * System Reference Guide provided with PSoC Creator. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. @@ -194,7 +194,7 @@ void CyPmSaveClocks(void) } /* Need to change nothing if master clock source is IMO */ /* Bus clock - save divider and set it, if needed, to divide-by-one */ - cyPmClockBackup.clkBusDiv = ((uint16) CY_PM_CLK_BUS_MSB_DIV_REG << 8u) | CY_PM_CLK_BUS_LSB_DIV_REG; + cyPmClockBackup.clkBusDiv = (uint16) ((uint16) CY_PM_CLK_BUS_MSB_DIV_REG << 8u) | CY_PM_CLK_BUS_LSB_DIV_REG; if(CY_PM_BUS_CLK_DIV_BY_ONE != cyPmClockBackup.clkBusDiv) { CyBusClk_SetDivider(CY_PM_BUS_CLK_DIV_BY_ONE); @@ -456,7 +456,7 @@ void CyPmRestoreClocks(void) } /* Bus clock - restore divider, if needed */ - if(cyPmClockBackup.clkBusDiv != (((uint16) CY_PM_CLK_BUS_MSB_DIV_REG << 8u) | CY_PM_CLK_BUS_LSB_DIV_REG)) + if(cyPmClockBackup.clkBusDiv != ((uint16)((uint16) CY_PM_CLK_BUS_MSB_DIV_REG << 8u) | CY_PM_CLK_BUS_LSB_DIV_REG)) { CyBusClk_SetDivider(cyPmClockBackup.clkBusDiv); } @@ -861,7 +861,7 @@ void CyPmAltAct(uint16 wakeupTime, uint16 wakeupSource) * Reentrant: * No * -* Side Effects: +* Side Effects and Restrictions: * For PSoC 5 silicon the wakeup source is not selectable. In this case the * wakeupSource argument is ignored and any of the available wakeup sources will * wake the device. @@ -875,6 +875,15 @@ void CyPmAltAct(uint16 wakeupTime, uint16 wakeupSource) * measure Hibernate/Sleep regulator settling time after a reset. The holdoff * delay is measured using rising edges of the 1 kHz ILO. * +* For PSoC 3 silicon hardware buzz should be disabled before entering a sleep +* power mode. It is disabled by PSoC Creator during startup. +* If a Low Voltage Interrupt (LVI), High Voltage Interrupt (HVI) or Brown Out +* detect (power supply supervising capabilities) are required in a design +* during sleep, use the Central Time Wheel (CTW) to periodically wake the +* device, perform software buzz, and refresh the supervisory services. If LVI, +* HVI, or Brown Out is not required, then use of the CTW is not required. +* Refer to the device errata for more information. +* *******************************************************************************/ void CyPmSleep(uint8 wakeupTime, uint16 wakeupSource) { @@ -912,10 +921,18 @@ void CyPmSleep(uint8 wakeupTime, uint16 wakeupSource) #if(CY_PSOC3) - /* Hardware buzz expected to be disabled below for TO6 */ + /* Silicon Revision ID is below TO6 */ if(CYDEV_CHIP_REV_ACTUAL < 5u) { + /* Hardware buzz expected to be disabled in Sleep mode */ CYASSERT(0u == (CY_PM_PWRSYS_WAKE_TR2_REG & CY_PM_PWRSYS_WAKE_TR2_EN_BUZZ)); + + /* LVI/HVI requires hardware buzz to be enabled */ + if(0u != (CY_PM_RESET_CR1_REG & (CY_PM_RESET_CR1_HVIA_EN | + CY_PM_RESET_CR1_LVIA_EN | CY_PM_RESET_CR1_LVID_EN))) + { + CYASSERT(0u != 0u); + } } #endif /* (CY_PSOC3) */ @@ -1399,6 +1416,21 @@ static void CyPmHibSaveSet(void) /* Make the same preparations for Hibernate and Sleep modes */ CyPmHibSlpSaveSet(); + + + /*************************************************************************** + * Save and set power mode wakeup trim registers + ***************************************************************************/ + #if(CY_PSOC3 || CY_PSOC5LP) + + cyPmBackup.wakeupTrim0 = CY_PM_PWRSYS_WAKE_TR0_REG; + cyPmBackup.wakeupTrim1 = CY_PM_PWRSYS_WAKE_TR1_REG; + + CY_PM_PWRSYS_WAKE_TR0_REG = CY_PM_PWRSYS_WAKE_TR0; + CY_PM_PWRSYS_WAKE_TR1_REG = CY_PM_PWRSYS_WAKE_TR1; + + #endif /* (CY_PSOC3 || CY_PSOC5LP) */ + } @@ -1469,6 +1501,17 @@ static void CyPmHibRestore(void) } #endif /* (!CY_PSOC5A) */ + + + /*************************************************************************** + * Restore power mode wakeup trim registers + ***************************************************************************/ + #if(CY_PSOC3 || CY_PSOC5LP) + + CY_PM_PWRSYS_WAKE_TR0_REG = cyPmBackup.wakeupTrim0; + CY_PM_PWRSYS_WAKE_TR1_REG = cyPmBackup.wakeupTrim1; + + #endif /* (CY_PSOC3 || CY_PSOC5LP) */ } @@ -1720,15 +1763,10 @@ void CyPmFtwSetInterval(uint8 ftwInterval) * * Save timewheels configuration * * Disable FTW and 1PPS (enable and interrupt) * * Reset CTW -* * Save and disable PICU interrupts (PSoC 5) -* * Save and disable PRES-A and PRES-D (PSoC 5) +* * Save and disable PICU interrupts +* * Save and disable PRES-A and PRES-D * - Save and disable LVI/HVI configuration (PSoC 5) * - Save and set to max buzz interval (PSoC 5) -* - If LVI/HVI is enabled than hardware buzz in required (PSoC 3): -* * Prepare wake trim registers -* * Disable LDO-A in proper way -* - If LVI/HVI is disabled than hardware buzz in not required (PSoC 3): -* * Disabled hardware buzz * - CyPmHibSlpSaveSet() function is called * * Parameters: @@ -1796,53 +1834,6 @@ static void CyPmSlpSaveSet(void) #endif /* (CY_PSOC5A) */ - #if(CY_PSOC3) - - /*************************************************************************** - * If LVI/HVI is enabled than hardware buzz in required: - * - Prepare wake trim registers - * - Disable LDO-A in proper way - * - * If LVI/HVI is disabled than hardware buzz in not required: - * - Disabled hardware buzz - ***************************************************************************/ - - cyPmBackup.wakeTr2 = CY_PM_PWRSYS_WAKE_TR2_REG; - - /* Reconfigure power mode wakeup trim registers */ - if(0u != (CY_PM_RESET_CR1_REG & (CY_PM_RESET_CR1_HVIA_EN | - CY_PM_RESET_CR1_LVIA_EN | CY_PM_RESET_CR1_LVID_EN))) - { - /* HVI/LVI is enabled - hardware buzz is required */ - if(CYDEV_CHIP_REV_ACTUAL < 5u) - { - /* Update entire register */ - CY_PM_PWRSYS_WAKE_TR2_REG = 0x3Bu; - - /* Prepares for disabling LDO-A by moving bandgap reference to VCCD */ - CY_PM_PWRSYS_CR1_REG = 0x01u; - - /* Disables LDO-A */ - CY_PM_PWRSYS_CR1_REG |= 0x02u; - } - else - { - /* For later revisions, just enable buzz */ - CY_PM_PWRSYS_WAKE_TR2_REG |= CY_PM_PWRSYS_WAKE_TR2_EN_BUZZ; - } - } - else - { - /* HVI/LVI is disabled - hardware buzz is not required */ - if(CYDEV_CHIP_REV_ACTUAL < 5u) - { - /* Update entire register */ - CY_PM_PWRSYS_WAKE_TR2_REG = 0x3Au; - } - } - - #endif /* (CY_PSOC3) */ - /* Apply configuration that are same for Sleep and Hibernate */ CyPmHibSlpSaveSet(); } @@ -1857,7 +1848,6 @@ static void CyPmSlpSaveSet(void) * - Restore timewheel configuration (PSoC 5) * - Restore PRES-A and PRES-D (PSoC 5) * - Restore PICU interrupts (PSoC 5) -* - Restore LVI/HVI configuration (PSoC 3) * - Restore buzz sleep trim value (PSoC 5) * - Call to CyPmHibSlpSaveRestore() * @@ -1897,28 +1887,6 @@ static void CyPmSlpRestore(void) #endif /* (CY_PSOC5A) */ - #if(CY_PSOC3) - - CY_PM_PWRSYS_WAKE_TR2_REG = cyPmBackup.wakeTr2; - - /* HVI/LVI is enabled - hardware buzz is required */ - if(CYDEV_CHIP_REV_ACTUAL < 5u) - { - /* Reconfigure power mode wakeup trim registers */ - if(0u != (CY_PM_RESET_CR1_REG & (CY_PM_RESET_CR1_HVIA_EN | - CY_PM_RESET_CR1_LVIA_EN | CY_PM_RESET_CR1_LVID_EN))) - { - /* Enables LDO-A */ - CY_PM_PWRSYS_CR1_REG &= ((uint8)(~0x02u)); - - /* Moves bandgap reference back to VCCA */ - CY_PM_PWRSYS_CR1_REG &= ((uint8)(~0x01u)); - } - } - - #endif /* (CY_PSOC3) */ - - /* Restore configuration that are same for Sleep and Hibernate */ CyPmHibSlpRestore(); } diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyPm.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyPm.h index 2fe6960..6ed1b86 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyPm.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyPm.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: cyPm.h -* Version 3.30 +* Version 3.40 * * Description: * Provides the function definitions for the power management API. @@ -10,7 +10,7 @@ * System Reference Guide provided with PSoC Creator. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. @@ -294,8 +294,6 @@ typedef struct cyPmBackupStruct #if(CY_PSOC5A) uint8 buzzSleepTrim; - #else - uint8 wakeTr2; #endif /* (CY_PSOC5A) */ @@ -315,6 +313,14 @@ typedef struct cyPmBackupStruct #endif /* (CY_PSOC3 || CY_PSOC5LP) */ + #if(CY_PSOC3 || CY_PSOC5LP) + + uint8 wakeupTrim0; + uint8 wakeupTrim1; + + #endif /* (CY_PSOC3 || CY_PSOC5LP) */ + + #if(CY_PSOC3 || CY_PSOC5A || CY_PSOC5LP) uint8 scctData[28u]; /* SC/CT routing registers */ @@ -737,6 +743,23 @@ typedef struct cyPmBackupStruct #define CY_PM_BOOST_CR2_EREFSEL_EXT (0x08u) + +#if(CY_PSOC3) + + #define CY_PM_PWRSYS_WAKE_TR0 (0xFFu) + #define CY_PM_PWRSYS_WAKE_TR1 (0x90u) + +#endif /* (CY_PSOC3) */ + + +#if(CY_PSOC5LP) + + #define CY_PM_PWRSYS_WAKE_TR0 (0xFFu) + #define CY_PM_PWRSYS_WAKE_TR1 (0xB0u) + +#endif /* (CY_PSOC5LP) */ + + /******************************************************************************* * Following code are OBSOLETE and must not be used starting from cy_boot 3.30 *******************************************************************************/ diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevice.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevice.h index f8f10d6..de859e6 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevice.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevice.h @@ -1,13 +1,13 @@ /******************************************************************************* * FILENAME: cydevice.h * OBSOLETE: Do not use this file. Use the _trm version instead. -* PSoC Creator 2.2 Component Pack 5 +* PSoC Creator 2.2 Component Pack 6 * * DESCRIPTION: * This file provides all of the address values for the entire PSoC device. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevice_trm.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevice_trm.h index e19ba93..6533208 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevice_trm.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevice_trm.h @@ -1,13 +1,13 @@ /******************************************************************************* * FILENAME: cydevice_trm.h * -* PSoC Creator 2.2 Component Pack 5 +* PSoC Creator 2.2 Component Pack 6 * * DESCRIPTION: * This file provides all of the address values for the entire PSoC device. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevicegnu.inc b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevicegnu.inc index 284b5cd..e36a2e1 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevicegnu.inc +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevicegnu.inc @@ -1,13 +1,13 @@ /******************************************************************************* * FILENAME: cydevicegnu.inc * OBSOLETE: Do not use this file. Use the _trm version instead. -* PSoC Creator 2.2 Component Pack 5 +* PSoC Creator 2.2 Component Pack 6 * * DESCRIPTION: * This file provides all of the address values for the entire PSoC device. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevicegnu_trm.inc b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevicegnu_trm.inc index 2ebd420..d31a488 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevicegnu_trm.inc +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevicegnu_trm.inc @@ -1,13 +1,13 @@ /******************************************************************************* * FILENAME: cydevicegnu_trm.inc * -* PSoC Creator 2.2 Component Pack 5 +* PSoC Creator 2.2 Component Pack 6 * * DESCRIPTION: * This file provides all of the address values for the entire PSoC device. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevicerv.inc b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevicerv.inc index 14ab3ab..c151e4e 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevicerv.inc +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevicerv.inc @@ -1,13 +1,13 @@ ; ; FILENAME: cydevicerv.inc ; OBSOLETE: Do not use this file. Use the _trm version instead. -; PSoC Creator 2.2 Component Pack 5 +; PSoC Creator 2.2 Component Pack 6 ; ; DESCRIPTION: ; This file provides all of the address values for the entire PSoC device. ; ;------------------------------------------------------------------------------- -; Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +; Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. ; You may use this file only in accordance with the license, terms, conditions, ; disclaimers, and limitations in the end user license agreement accompanying ; the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevicerv_trm.inc b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevicerv_trm.inc index 25cf87f..797aeb8 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevicerv_trm.inc +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cydevicerv_trm.inc @@ -1,13 +1,13 @@ ; ; FILENAME: cydevicerv_trm.inc ; -; PSoC Creator 2.2 Component Pack 5 +; PSoC Creator 2.2 Component Pack 6 ; ; DESCRIPTION: ; This file provides all of the address values for the entire PSoC device. ; ;------------------------------------------------------------------------------- -; Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +; Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. ; You may use this file only in accordance with the license, terms, conditions, ; disclaimers, and limitations in the end user license agreement accompanying ; the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyfitter.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyfitter.h index 1892547..1047567 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyfitter.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyfitter.h @@ -3,6 +3,80 @@ #include #include +/* Timer_1_TimerUDB */ +#define Timer_1_TimerUDB_nrstSts_stsreg__0__MASK 0x01u +#define Timer_1_TimerUDB_nrstSts_stsreg__0__POS 0 +#define Timer_1_TimerUDB_nrstSts_stsreg__16BIT_STATUS_AUX_CTL_REG CYREG_B1_UDB04_05_ACTL +#define Timer_1_TimerUDB_nrstSts_stsreg__16BIT_STATUS_REG CYREG_B1_UDB04_05_ST +#define Timer_1_TimerUDB_nrstSts_stsreg__2__MASK 0x04u +#define Timer_1_TimerUDB_nrstSts_stsreg__2__POS 2 +#define Timer_1_TimerUDB_nrstSts_stsreg__3__MASK 0x08u +#define Timer_1_TimerUDB_nrstSts_stsreg__3__POS 3 +#define Timer_1_TimerUDB_nrstSts_stsreg__MASK 0x0Du +#define Timer_1_TimerUDB_nrstSts_stsreg__MASK_REG CYREG_B1_UDB04_MSK +#define Timer_1_TimerUDB_nrstSts_stsreg__MASK_ST_AUX_CTL_REG CYREG_B1_UDB04_MSK_ACTL +#define Timer_1_TimerUDB_nrstSts_stsreg__PER_ST_AUX_CTL_REG CYREG_B1_UDB04_MSK_ACTL +#define Timer_1_TimerUDB_nrstSts_stsreg__STATUS_AUX_CTL_REG CYREG_B1_UDB04_ACTL +#define Timer_1_TimerUDB_nrstSts_stsreg__STATUS_CNT_REG CYREG_B1_UDB04_ST_CTL +#define Timer_1_TimerUDB_nrstSts_stsreg__STATUS_CONTROL_REG CYREG_B1_UDB04_ST_CTL +#define Timer_1_TimerUDB_nrstSts_stsreg__STATUS_REG CYREG_B1_UDB04_ST +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_CONTROL_AUX_CTL_REG CYREG_B1_UDB04_05_ACTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_CONTROL_CONTROL_REG CYREG_B1_UDB04_05_CTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_CONTROL_COUNT_REG CYREG_B1_UDB04_05_CTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_COUNT_CONTROL_REG CYREG_B1_UDB04_05_CTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_COUNT_COUNT_REG CYREG_B1_UDB04_05_CTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_MASK_MASK_REG CYREG_B1_UDB04_05_MSK +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_MASK_PERIOD_REG CYREG_B1_UDB04_05_MSK +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_PERIOD_MASK_REG CYREG_B1_UDB04_05_MSK +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_PERIOD_PERIOD_REG CYREG_B1_UDB04_05_MSK +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__7__MASK 0x80u +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__7__POS 7 +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__CONTROL_AUX_CTL_REG CYREG_B1_UDB04_ACTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__CONTROL_REG CYREG_B1_UDB04_CTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__CONTROL_ST_REG CYREG_B1_UDB04_ST_CTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__COUNT_REG CYREG_B1_UDB04_CTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__COUNT_ST_REG CYREG_B1_UDB04_ST_CTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__MASK 0x80u +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__MASK_CTL_AUX_CTL_REG CYREG_B1_UDB04_MSK_ACTL +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__PERIOD_REG CYREG_B1_UDB04_MSK +#define Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__PER_CTL_AUX_CTL_REG CYREG_B1_UDB04_MSK_ACTL +#define Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_A0_REG CYREG_B1_UDB04_05_A0 +#define Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_A1_REG CYREG_B1_UDB04_05_A1 +#define Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_D0_REG CYREG_B1_UDB04_05_D0 +#define Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_D1_REG CYREG_B1_UDB04_05_D1 +#define Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_DP_AUX_CTL_REG CYREG_B1_UDB04_05_ACTL +#define Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_F0_REG CYREG_B1_UDB04_05_F0 +#define Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_F1_REG CYREG_B1_UDB04_05_F1 +#define Timer_1_TimerUDB_sT16_timerdp_u0__A0_A1_REG CYREG_B1_UDB04_A0_A1 +#define Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG CYREG_B1_UDB04_A0 +#define Timer_1_TimerUDB_sT16_timerdp_u0__A1_REG CYREG_B1_UDB04_A1 +#define Timer_1_TimerUDB_sT16_timerdp_u0__D0_D1_REG CYREG_B1_UDB04_D0_D1 +#define Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG CYREG_B1_UDB04_D0 +#define Timer_1_TimerUDB_sT16_timerdp_u0__D1_REG CYREG_B1_UDB04_D1 +#define Timer_1_TimerUDB_sT16_timerdp_u0__DP_AUX_CTL_REG CYREG_B1_UDB04_ACTL +#define Timer_1_TimerUDB_sT16_timerdp_u0__F0_F1_REG CYREG_B1_UDB04_F0_F1 +#define Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG CYREG_B1_UDB04_F0 +#define Timer_1_TimerUDB_sT16_timerdp_u0__F1_REG CYREG_B1_UDB04_F1 +#define Timer_1_TimerUDB_sT16_timerdp_u0__MSK_DP_AUX_CTL_REG CYREG_B1_UDB04_MSK_ACTL +#define Timer_1_TimerUDB_sT16_timerdp_u0__PER_DP_AUX_CTL_REG CYREG_B1_UDB04_MSK_ACTL +#define Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_A0_REG CYREG_B1_UDB05_06_A0 +#define Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_A1_REG CYREG_B1_UDB05_06_A1 +#define Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_D0_REG CYREG_B1_UDB05_06_D0 +#define Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_D1_REG CYREG_B1_UDB05_06_D1 +#define Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_DP_AUX_CTL_REG CYREG_B1_UDB05_06_ACTL +#define Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_F0_REG CYREG_B1_UDB05_06_F0 +#define Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_F1_REG CYREG_B1_UDB05_06_F1 +#define Timer_1_TimerUDB_sT16_timerdp_u1__A0_A1_REG CYREG_B1_UDB05_A0_A1 +#define Timer_1_TimerUDB_sT16_timerdp_u1__A0_REG CYREG_B1_UDB05_A0 +#define Timer_1_TimerUDB_sT16_timerdp_u1__A1_REG CYREG_B1_UDB05_A1 +#define Timer_1_TimerUDB_sT16_timerdp_u1__D0_D1_REG CYREG_B1_UDB05_D0_D1 +#define Timer_1_TimerUDB_sT16_timerdp_u1__D0_REG CYREG_B1_UDB05_D0 +#define Timer_1_TimerUDB_sT16_timerdp_u1__D1_REG CYREG_B1_UDB05_D1 +#define Timer_1_TimerUDB_sT16_timerdp_u1__DP_AUX_CTL_REG CYREG_B1_UDB05_ACTL +#define Timer_1_TimerUDB_sT16_timerdp_u1__F0_F1_REG CYREG_B1_UDB05_F0_F1 +#define Timer_1_TimerUDB_sT16_timerdp_u1__F0_REG CYREG_B1_UDB05_F0 +#define Timer_1_TimerUDB_sT16_timerdp_u1__F1_REG CYREG_B1_UDB05_F1 + /* SPIM_IntClock */ #define SPIM_IntClock__CFG0 CYREG_CLKDIST_DCFG0_CFG0 #define SPIM_IntClock__CFG1 CYREG_CLKDIST_DCFG0_CFG1 @@ -15,27 +89,27 @@ #define SPIM_IntClock__PM_STBY_MSK 0x01u /* UART_1_BUART */ -#define UART_1_BUART_sTX_TxShifter_u0__16BIT_A0_REG CYREG_B0_UDB01_02_A0 -#define UART_1_BUART_sTX_TxShifter_u0__16BIT_A1_REG CYREG_B0_UDB01_02_A1 -#define UART_1_BUART_sTX_TxShifter_u0__16BIT_D0_REG CYREG_B0_UDB01_02_D0 -#define UART_1_BUART_sTX_TxShifter_u0__16BIT_D1_REG CYREG_B0_UDB01_02_D1 -#define UART_1_BUART_sTX_TxShifter_u0__16BIT_DP_AUX_CTL_REG CYREG_B0_UDB01_02_ACTL -#define UART_1_BUART_sTX_TxShifter_u0__16BIT_F0_REG CYREG_B0_UDB01_02_F0 -#define UART_1_BUART_sTX_TxShifter_u0__16BIT_F1_REG CYREG_B0_UDB01_02_F1 -#define UART_1_BUART_sTX_TxShifter_u0__A0_A1_REG CYREG_B0_UDB01_A0_A1 -#define UART_1_BUART_sTX_TxShifter_u0__A0_REG CYREG_B0_UDB01_A0 -#define UART_1_BUART_sTX_TxShifter_u0__A1_REG CYREG_B0_UDB01_A1 -#define UART_1_BUART_sTX_TxShifter_u0__D0_D1_REG CYREG_B0_UDB01_D0_D1 -#define UART_1_BUART_sTX_TxShifter_u0__D0_REG CYREG_B0_UDB01_D0 -#define UART_1_BUART_sTX_TxShifter_u0__D1_REG CYREG_B0_UDB01_D1 -#define UART_1_BUART_sTX_TxShifter_u0__DP_AUX_CTL_REG CYREG_B0_UDB01_ACTL -#define UART_1_BUART_sTX_TxShifter_u0__F0_F1_REG CYREG_B0_UDB01_F0_F1 -#define UART_1_BUART_sTX_TxShifter_u0__F0_REG CYREG_B0_UDB01_F0 -#define UART_1_BUART_sTX_TxShifter_u0__F1_REG CYREG_B0_UDB01_F1 +#define UART_1_BUART_sTX_TxShifter_u0__16BIT_A0_REG CYREG_B0_UDB04_05_A0 +#define UART_1_BUART_sTX_TxShifter_u0__16BIT_A1_REG CYREG_B0_UDB04_05_A1 +#define UART_1_BUART_sTX_TxShifter_u0__16BIT_D0_REG CYREG_B0_UDB04_05_D0 +#define UART_1_BUART_sTX_TxShifter_u0__16BIT_D1_REG CYREG_B0_UDB04_05_D1 +#define UART_1_BUART_sTX_TxShifter_u0__16BIT_DP_AUX_CTL_REG CYREG_B0_UDB04_05_ACTL +#define UART_1_BUART_sTX_TxShifter_u0__16BIT_F0_REG CYREG_B0_UDB04_05_F0 +#define UART_1_BUART_sTX_TxShifter_u0__16BIT_F1_REG CYREG_B0_UDB04_05_F1 +#define UART_1_BUART_sTX_TxShifter_u0__A0_A1_REG CYREG_B0_UDB04_A0_A1 +#define UART_1_BUART_sTX_TxShifter_u0__A0_REG CYREG_B0_UDB04_A0 +#define UART_1_BUART_sTX_TxShifter_u0__A1_REG CYREG_B0_UDB04_A1 +#define UART_1_BUART_sTX_TxShifter_u0__D0_D1_REG CYREG_B0_UDB04_D0_D1 +#define UART_1_BUART_sTX_TxShifter_u0__D0_REG CYREG_B0_UDB04_D0 +#define UART_1_BUART_sTX_TxShifter_u0__D1_REG CYREG_B0_UDB04_D1 +#define UART_1_BUART_sTX_TxShifter_u0__DP_AUX_CTL_REG CYREG_B0_UDB04_ACTL +#define UART_1_BUART_sTX_TxShifter_u0__F0_F1_REG CYREG_B0_UDB04_F0_F1 +#define UART_1_BUART_sTX_TxShifter_u0__F0_REG CYREG_B0_UDB04_F0 +#define UART_1_BUART_sTX_TxShifter_u0__F1_REG CYREG_B0_UDB04_F1 #define UART_1_BUART_sTX_TxSts__0__MASK 0x01u #define UART_1_BUART_sTX_TxSts__0__POS 0 -#define UART_1_BUART_sTX_TxSts__16BIT_STATUS_AUX_CTL_REG CYREG_B0_UDB02_03_ACTL -#define UART_1_BUART_sTX_TxSts__16BIT_STATUS_REG CYREG_B0_UDB02_03_ST +#define UART_1_BUART_sTX_TxSts__16BIT_STATUS_AUX_CTL_REG CYREG_B0_UDB04_05_ACTL +#define UART_1_BUART_sTX_TxSts__16BIT_STATUS_REG CYREG_B0_UDB04_05_ST #define UART_1_BUART_sTX_TxSts__1__MASK 0x02u #define UART_1_BUART_sTX_TxSts__1__POS 1 #define UART_1_BUART_sTX_TxSts__2__MASK 0x04u @@ -43,26 +117,26 @@ #define UART_1_BUART_sTX_TxSts__3__MASK 0x08u #define UART_1_BUART_sTX_TxSts__3__POS 3 #define UART_1_BUART_sTX_TxSts__MASK 0x0Fu -#define UART_1_BUART_sTX_TxSts__MASK_REG CYREG_B0_UDB02_MSK -#define UART_1_BUART_sTX_TxSts__STATUS_AUX_CTL_REG CYREG_B0_UDB02_ACTL -#define UART_1_BUART_sTX_TxSts__STATUS_REG CYREG_B0_UDB02_ST -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A0_REG CYREG_B0_UDB00_01_A0 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A1_REG CYREG_B0_UDB00_01_A1 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D0_REG CYREG_B0_UDB00_01_D0 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D1_REG CYREG_B0_UDB00_01_D1 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_DP_AUX_CTL_REG CYREG_B0_UDB00_01_ACTL -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F0_REG CYREG_B0_UDB00_01_F0 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F1_REG CYREG_B0_UDB00_01_F1 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_A1_REG CYREG_B0_UDB00_A0_A1 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_REG CYREG_B0_UDB00_A0 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A1_REG CYREG_B0_UDB00_A1 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_D1_REG CYREG_B0_UDB00_D0_D1 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_REG CYREG_B0_UDB00_D0 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D1_REG CYREG_B0_UDB00_D1 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__DP_AUX_CTL_REG CYREG_B0_UDB00_ACTL -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_F1_REG CYREG_B0_UDB00_F0_F1 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_REG CYREG_B0_UDB00_F0 -#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F1_REG CYREG_B0_UDB00_F1 +#define UART_1_BUART_sTX_TxSts__MASK_REG CYREG_B0_UDB04_MSK +#define UART_1_BUART_sTX_TxSts__STATUS_AUX_CTL_REG CYREG_B0_UDB04_ACTL +#define UART_1_BUART_sTX_TxSts__STATUS_REG CYREG_B0_UDB04_ST +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A0_REG CYREG_B0_UDB05_06_A0 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A1_REG CYREG_B0_UDB05_06_A1 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D0_REG CYREG_B0_UDB05_06_D0 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D1_REG CYREG_B0_UDB05_06_D1 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_DP_AUX_CTL_REG CYREG_B0_UDB05_06_ACTL +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F0_REG CYREG_B0_UDB05_06_F0 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F1_REG CYREG_B0_UDB05_06_F1 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_A1_REG CYREG_B0_UDB05_A0_A1 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_REG CYREG_B0_UDB05_A0 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A1_REG CYREG_B0_UDB05_A1 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_D1_REG CYREG_B0_UDB05_D0_D1 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_REG CYREG_B0_UDB05_D0 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D1_REG CYREG_B0_UDB05_D1 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__DP_AUX_CTL_REG CYREG_B0_UDB05_ACTL +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_F1_REG CYREG_B0_UDB05_F0_F1 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_REG CYREG_B0_UDB05_F0 +#define UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F1_REG CYREG_B0_UDB05_F1 /* LCD_LCDPort */ #define LCD_LCDPort__0__MASK 0x01u @@ -243,8 +317,8 @@ #define SPIM_BSPIM_BitCounter__MASK_CTL_AUX_CTL_REG CYREG_B0_UDB03_MSK_ACTL #define SPIM_BSPIM_BitCounter__PERIOD_REG CYREG_B0_UDB03_MSK #define SPIM_BSPIM_BitCounter__PER_CTL_AUX_CTL_REG CYREG_B0_UDB03_MSK_ACTL -#define SPIM_BSPIM_RxStsReg__16BIT_STATUS_AUX_CTL_REG CYREG_B0_UDB00_01_ACTL -#define SPIM_BSPIM_RxStsReg__16BIT_STATUS_REG CYREG_B0_UDB00_01_ST +#define SPIM_BSPIM_RxStsReg__16BIT_STATUS_AUX_CTL_REG CYREG_B0_UDB02_03_ACTL +#define SPIM_BSPIM_RxStsReg__16BIT_STATUS_REG CYREG_B0_UDB02_03_ST #define SPIM_BSPIM_RxStsReg__4__MASK 0x10u #define SPIM_BSPIM_RxStsReg__4__POS 4 #define SPIM_BSPIM_RxStsReg__5__MASK 0x20u @@ -252,13 +326,13 @@ #define SPIM_BSPIM_RxStsReg__6__MASK 0x40u #define SPIM_BSPIM_RxStsReg__6__POS 6 #define SPIM_BSPIM_RxStsReg__MASK 0x70u -#define SPIM_BSPIM_RxStsReg__MASK_REG CYREG_B0_UDB00_MSK -#define SPIM_BSPIM_RxStsReg__STATUS_AUX_CTL_REG CYREG_B0_UDB00_ACTL -#define SPIM_BSPIM_RxStsReg__STATUS_REG CYREG_B0_UDB00_ST +#define SPIM_BSPIM_RxStsReg__MASK_REG CYREG_B0_UDB02_MSK +#define SPIM_BSPIM_RxStsReg__STATUS_AUX_CTL_REG CYREG_B0_UDB02_ACTL +#define SPIM_BSPIM_RxStsReg__STATUS_REG CYREG_B0_UDB02_ST #define SPIM_BSPIM_TxStsReg__0__MASK 0x01u #define SPIM_BSPIM_TxStsReg__0__POS 0 -#define SPIM_BSPIM_TxStsReg__16BIT_STATUS_AUX_CTL_REG CYREG_B0_UDB04_05_ACTL -#define SPIM_BSPIM_TxStsReg__16BIT_STATUS_REG CYREG_B0_UDB04_05_ST +#define SPIM_BSPIM_TxStsReg__16BIT_STATUS_AUX_CTL_REG CYREG_B0_UDB00_01_ACTL +#define SPIM_BSPIM_TxStsReg__16BIT_STATUS_REG CYREG_B0_UDB00_01_ST #define SPIM_BSPIM_TxStsReg__1__MASK 0x02u #define SPIM_BSPIM_TxStsReg__1__POS 1 #define SPIM_BSPIM_TxStsReg__2__MASK 0x04u @@ -268,9 +342,9 @@ #define SPIM_BSPIM_TxStsReg__4__MASK 0x10u #define SPIM_BSPIM_TxStsReg__4__POS 4 #define SPIM_BSPIM_TxStsReg__MASK 0x1Fu -#define SPIM_BSPIM_TxStsReg__MASK_REG CYREG_B0_UDB04_MSK -#define SPIM_BSPIM_TxStsReg__STATUS_AUX_CTL_REG CYREG_B0_UDB04_ACTL -#define SPIM_BSPIM_TxStsReg__STATUS_REG CYREG_B0_UDB04_ST +#define SPIM_BSPIM_TxStsReg__MASK_REG CYREG_B0_UDB00_MSK +#define SPIM_BSPIM_TxStsReg__STATUS_AUX_CTL_REG CYREG_B0_UDB00_ACTL +#define SPIM_BSPIM_TxStsReg__STATUS_REG CYREG_B0_UDB00_ST #define SPIM_BSPIM_sR8_Dp_u0__16BIT_A0_REG CYREG_B0_UDB03_04_A0 #define SPIM_BSPIM_sR8_Dp_u0__16BIT_A1_REG CYREG_B0_UDB03_04_A1 #define SPIM_BSPIM_sR8_Dp_u0__16BIT_D0_REG CYREG_B0_UDB03_04_D0 @@ -430,6 +504,38 @@ #define Pin_4__SHIFT 3 #define Pin_4__SLW CYREG_PRT3_SLW +/* Pin_5 */ +#define Pin_5__0__MASK 0x10u +#define Pin_5__0__PC CYREG_PRT3_PC4 +#define Pin_5__0__PORT 3u +#define Pin_5__0__SHIFT 4 +#define Pin_5__AG CYREG_PRT3_AG +#define Pin_5__AMUX CYREG_PRT3_AMUX +#define Pin_5__BIE CYREG_PRT3_BIE +#define Pin_5__BIT_MASK CYREG_PRT3_BIT_MASK +#define Pin_5__BYP CYREG_PRT3_BYP +#define Pin_5__CTL CYREG_PRT3_CTL +#define Pin_5__DM0 CYREG_PRT3_DM0 +#define Pin_5__DM1 CYREG_PRT3_DM1 +#define Pin_5__DM2 CYREG_PRT3_DM2 +#define Pin_5__DR CYREG_PRT3_DR +#define Pin_5__INP_DIS CYREG_PRT3_INP_DIS +#define Pin_5__LCD_COM_SEG CYREG_PRT3_LCD_COM_SEG +#define Pin_5__LCD_EN CYREG_PRT3_LCD_EN +#define Pin_5__MASK 0x10u +#define Pin_5__PORT 3u +#define Pin_5__PRT CYREG_PRT3_PRT +#define Pin_5__PRTDSI__CAPS_SEL CYREG_PRT3_CAPS_SEL +#define Pin_5__PRTDSI__DBL_SYNC_IN CYREG_PRT3_DBL_SYNC_IN +#define Pin_5__PRTDSI__OE_SEL0 CYREG_PRT3_OE_SEL0 +#define Pin_5__PRTDSI__OE_SEL1 CYREG_PRT3_OE_SEL1 +#define Pin_5__PRTDSI__OUT_SEL0 CYREG_PRT3_OUT_SEL0 +#define Pin_5__PRTDSI__OUT_SEL1 CYREG_PRT3_OUT_SEL1 +#define Pin_5__PRTDSI__SYNC_OUT CYREG_PRT3_SYNC_OUT +#define Pin_5__PS CYREG_PRT3_PS +#define Pin_5__SHIFT 4 +#define Pin_5__SLW CYREG_PRT3_SLW + /* Tx_1 */ #define Tx_1__0__MASK 0x80u #define Tx_1__0__PC CYREG_PRT3_PC7 @@ -465,26 +571,28 @@ /* SS */ #define SS_Async_ctrl_reg__0__MASK 0x01u #define SS_Async_ctrl_reg__0__POS 0 -#define SS_Async_ctrl_reg__16BIT_CONTROL_AUX_CTL_REG CYREG_B0_UDB05_06_ACTL -#define SS_Async_ctrl_reg__16BIT_CONTROL_CONTROL_REG CYREG_B0_UDB05_06_CTL -#define SS_Async_ctrl_reg__16BIT_CONTROL_COUNT_REG CYREG_B0_UDB05_06_CTL -#define SS_Async_ctrl_reg__16BIT_COUNT_CONTROL_REG CYREG_B0_UDB05_06_CTL -#define SS_Async_ctrl_reg__16BIT_COUNT_COUNT_REG CYREG_B0_UDB05_06_CTL -#define SS_Async_ctrl_reg__16BIT_MASK_MASK_REG CYREG_B0_UDB05_06_MSK -#define SS_Async_ctrl_reg__16BIT_MASK_PERIOD_REG CYREG_B0_UDB05_06_MSK -#define SS_Async_ctrl_reg__16BIT_PERIOD_MASK_REG CYREG_B0_UDB05_06_MSK -#define SS_Async_ctrl_reg__16BIT_PERIOD_PERIOD_REG CYREG_B0_UDB05_06_MSK +#define SS_Async_ctrl_reg__16BIT_CONTROL_AUX_CTL_REG CYREG_B0_UDB01_02_ACTL +#define SS_Async_ctrl_reg__16BIT_CONTROL_CONTROL_REG CYREG_B0_UDB01_02_CTL +#define SS_Async_ctrl_reg__16BIT_CONTROL_COUNT_REG CYREG_B0_UDB01_02_CTL +#define SS_Async_ctrl_reg__16BIT_COUNT_CONTROL_REG CYREG_B0_UDB01_02_CTL +#define SS_Async_ctrl_reg__16BIT_COUNT_COUNT_REG CYREG_B0_UDB01_02_CTL +#define SS_Async_ctrl_reg__16BIT_MASK_MASK_REG CYREG_B0_UDB01_02_MSK +#define SS_Async_ctrl_reg__16BIT_MASK_PERIOD_REG CYREG_B0_UDB01_02_MSK +#define SS_Async_ctrl_reg__16BIT_PERIOD_MASK_REG CYREG_B0_UDB01_02_MSK +#define SS_Async_ctrl_reg__16BIT_PERIOD_PERIOD_REG CYREG_B0_UDB01_02_MSK #define SS_Async_ctrl_reg__1__MASK 0x02u #define SS_Async_ctrl_reg__1__POS 1 -#define SS_Async_ctrl_reg__CONTROL_AUX_CTL_REG CYREG_B0_UDB05_ACTL -#define SS_Async_ctrl_reg__CONTROL_REG CYREG_B0_UDB05_CTL -#define SS_Async_ctrl_reg__CONTROL_ST_REG CYREG_B0_UDB05_ST_CTL -#define SS_Async_ctrl_reg__COUNT_REG CYREG_B0_UDB05_CTL -#define SS_Async_ctrl_reg__COUNT_ST_REG CYREG_B0_UDB05_ST_CTL -#define SS_Async_ctrl_reg__MASK 0x03u -#define SS_Async_ctrl_reg__MASK_CTL_AUX_CTL_REG CYREG_B0_UDB05_MSK_ACTL -#define SS_Async_ctrl_reg__PERIOD_REG CYREG_B0_UDB05_MSK -#define SS_Async_ctrl_reg__PER_CTL_AUX_CTL_REG CYREG_B0_UDB05_MSK_ACTL +#define SS_Async_ctrl_reg__2__MASK 0x04u +#define SS_Async_ctrl_reg__2__POS 2 +#define SS_Async_ctrl_reg__CONTROL_AUX_CTL_REG CYREG_B0_UDB01_ACTL +#define SS_Async_ctrl_reg__CONTROL_REG CYREG_B0_UDB01_CTL +#define SS_Async_ctrl_reg__CONTROL_ST_REG CYREG_B0_UDB01_ST_CTL +#define SS_Async_ctrl_reg__COUNT_REG CYREG_B0_UDB01_CTL +#define SS_Async_ctrl_reg__COUNT_ST_REG CYREG_B0_UDB01_ST_CTL +#define SS_Async_ctrl_reg__MASK 0x07u +#define SS_Async_ctrl_reg__MASK_CTL_AUX_CTL_REG CYREG_B0_UDB01_MSK_ACTL +#define SS_Async_ctrl_reg__PERIOD_REG CYREG_B0_UDB01_MSK +#define SS_Async_ctrl_reg__PER_CTL_AUX_CTL_REG CYREG_B0_UDB01_MSK_ACTL /* Miscellaneous */ /* -- WARNING: define names containing LEOPARD or PANTHER are deprecated and will be removed in a future release */ @@ -494,16 +602,17 @@ #define CYDEV_CONFIG_FASTBOOT_ENABLED 0 #define CYDEV_CHIP_REV_PANTHER_PRODUCTION 1u #define CYDEV_CHIP_REVISION_5A_PRODUCTION 1u -#define CYDEV_CHIP_MEMBER_5A 2u +#define CYDEV_CHIP_MEMBER_5A 3u #define CYDEV_CHIP_FAMILY_PSOC5 3u -#define CYDEV_CHIP_DIE_PANTHER 2u +#define CYDEV_CHIP_DIE_PANTHER 3u #define CYDEV_CHIP_DIE_EXPECT CYDEV_CHIP_DIE_PANTHER #define BCLK__BUS_CLK__HZ 24000000U #define BCLK__BUS_CLK__KHZ 24000U #define BCLK__BUS_CLK__MHZ 24U #define CYDEV_CHIP_DIE_ACTUAL CYDEV_CHIP_DIE_EXPECT #define CYDEV_CHIP_DIE_LEOPARD 1u -#define CYDEV_CHIP_DIE_PSOC5LP 3u +#define CYDEV_CHIP_DIE_PSOC4A 2u +#define CYDEV_CHIP_DIE_PSOC5LP 4u #define CYDEV_CHIP_DIE_UNKNOWN 0u #define CYDEV_CHIP_FAMILY_PSOC3 1u #define CYDEV_CHIP_FAMILY_PSOC4 2u @@ -511,13 +620,16 @@ #define CYDEV_CHIP_FAMILY_USED CYDEV_CHIP_FAMILY_PSOC5 #define CYDEV_CHIP_JTAG_ID 0x0E13C069u #define CYDEV_CHIP_MEMBER_3A 1u -#define CYDEV_CHIP_MEMBER_5B 3u +#define CYDEV_CHIP_MEMBER_4A 2u +#define CYDEV_CHIP_MEMBER_5B 4u #define CYDEV_CHIP_MEMBER_UNKNOWN 0u #define CYDEV_CHIP_MEMBER_USED CYDEV_CHIP_MEMBER_5A #define CYDEV_CHIP_REVISION_3A_ES1 0u #define CYDEV_CHIP_REVISION_3A_ES2 1u #define CYDEV_CHIP_REVISION_3A_ES3 3u #define CYDEV_CHIP_REVISION_3A_PRODUCTION 3u +#define CYDEV_CHIP_REVISION_4A_ES0 17u +#define CYDEV_CHIP_REVISION_4A_PRODUCTION 17u #define CYDEV_CHIP_REVISION_5A_ES0 0u #define CYDEV_CHIP_REVISION_5A_ES1 1u #define CYDEV_CHIP_REVISION_5B_ES0 0u @@ -530,6 +642,8 @@ #define CYDEV_CHIP_REV_LEOPARD_PRODUCTION 3u #define CYDEV_CHIP_REV_PANTHER_ES0 0u #define CYDEV_CHIP_REV_PANTHER_ES1 1u +#define CYDEV_CHIP_REV_PSOC4A_ES0 17u +#define CYDEV_CHIP_REV_PSOC4A_PRODUCTION 17u #define CYDEV_CHIP_REV_PSOC5LP_ES0 0u #define CYDEV_CHIP_REV_PSOC5LP_PRODUCTION 0u #define CYDEV_CONFIGURATION_COMPRESSED 0 diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyfitter_cfg.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyfitter_cfg.c index 2a4057a..b5c3dfb 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyfitter_cfg.c +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyfitter_cfg.c @@ -1,6 +1,6 @@ /******************************************************************************* * FILENAME: cyfitter_cfg.c -* PSoC Creator 2.2 Component Pack 5 +* PSoC Creator 2.2 Component Pack 6 * * Description: * This file is automatically generated by PSoC Creator with device @@ -8,7 +8,7 @@ * CyClockStartupError(), this file should not be modified. * ******************************************************************************** -* Copyright 2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. @@ -110,7 +110,7 @@ static void CyClockStartupError(uint8 errorCode) { volatile uint8 * const addr8 = (volatile uint8 *)addr; uint32 i; - for (i = 0; i < count; i++) + for (i = 0u; i < count; i++) { addr8[i] = 0u; } @@ -142,7 +142,7 @@ static void CyClockStartupError(uint8 errorCode) volatile uint8 * const dest8 = (volatile uint8 *)dest; const uint8 * const src8 = (const uint8 *)src; uint32 i; - for (i = 0; i < count; i++) + for (i = 0u; i < count; i++) { dest8[i] = src8[i]; } @@ -217,80 +217,107 @@ static void CyClockStartupError(uint8 errorCode) /* UDB_1_3_1_CONFIG Address: CYDEV_UCFG_B0_P2_U1_BASE Size (bytes): 128 */ #define BS_UDB_1_3_1_CONFIG_VAL ((const uint8 CYFAR *)0x48000280u) +/* UDB_1_0_0_CONFIG Address: CYDEV_UCFG_B1_P2_U0_BASE Size (bytes): 128 */ +#define BS_UDB_1_0_0_CONFIG_VAL ((const uint8 CYFAR *)0x48000300u) + +/* UDB_1_0_1_CONFIG Address: CYDEV_UCFG_B1_P2_U1_BASE Size (bytes): 128 */ +#define BS_UDB_1_0_1_CONFIG_VAL ((const uint8 CYFAR *)0x48000380u) + /* UWRK_B0_WRK_STATCTL_BITS Address: CYDEV_UWRK_UWRK8_B0_BASE + 0x00000070u Size (bytes): 32 */ -#define BS_UWRK_B0_WRK_STATCTL_BITS_VAL ((const uint8 CYFAR *)0x48000300u) +#define BS_UWRK_B0_WRK_STATCTL_BITS_VAL ((const uint8 CYFAR *)0x48000400u) -/* DSI0_2_HV_ROUTING Address: CYDEV_UCFG_DSI7_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_DSI0_2_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000320u) +/* UWRK_B1_WRK_STATCTL_BITS Address: CYDEV_UWRK_UWRK8_B1_BASE + 0x00000070u Size (bytes): 32 */ +#define BS_UWRK_B1_WRK_STATCTL_BITS_VAL ((const uint8 CYFAR *)0x48000420u) /* DSI0_3_HV_ROUTING Address: CYDEV_UCFG_DSI6_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_DSI0_3_HV_ROUTING_VAL ((const uint8 CYFAR *)0x480003A0u) +#define BS_DSI0_3_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000440u) /* DSI0_4_HV_ROUTING Address: CYDEV_UCFG_DSI5_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_DSI0_4_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000420u) +#define BS_DSI0_4_HV_ROUTING_VAL ((const uint8 CYFAR *)0x480004C0u) /* DSISWITCH_0_5 Address: CYDEV_UCFG_DSI4_BASE Size (bytes): 128 */ -#define BS_DSISWITCH_0_5_VAL ((const uint8 CYFAR *)0x480004A0u) +#define BS_DSISWITCH_0_5_VAL ((const uint8 CYFAR *)0x48000540u) /* DSI0_5_HV_ROUTING Address: CYDEV_UCFG_DSI4_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_DSI0_5_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000520u) +#define BS_DSI0_5_HV_ROUTING_VAL ((const uint8 CYFAR *)0x480005C0u) + +/* UDBSWITCH_1_0 Address: CYDEV_UCFG_B1_P2_ROUTE_BASE Size (bytes): 128 */ +#define BS_UDBSWITCH_1_0_VAL ((const uint8 CYFAR *)0x48000640u) -/* UDB_1_2_HV_ROUTING Address: CYDEV_UCFG_B0_P4_ROUTE_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_UDB_1_2_HV_ROUTING_VAL ((const uint8 CYFAR *)0x480005A0u) +/* UDB_2_0_HV_ROUTING Address: CYDEV_UCFG_B1_P2_ROUTE_BASE + 0x00000080u Size (bytes): 128 */ +#define BS_UDB_2_0_HV_ROUTING_VAL ((const uint8 CYFAR *)0x480006C0u) + +/* UDB_2_1_HV_ROUTING Address: CYDEV_UCFG_B1_P3_ROUTE_BASE + 0x00000080u Size (bytes): 128 */ +#define BS_UDB_2_1_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000740u) /* UDB_2_2_HV_ROUTING Address: CYDEV_UCFG_B0_P3_ROUTE_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_UDB_2_2_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000620u) +#define BS_UDB_2_2_HV_ROUTING_VAL ((const uint8 CYFAR *)0x480007C0u) /* UDB_1_3_HV_ROUTING Address: CYDEV_UCFG_B0_P5_ROUTE_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_UDB_1_3_HV_ROUTING_VAL ((const uint8 CYFAR *)0x480006A0u) +#define BS_UDB_1_3_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000840u) /* UDBSWITCH_1_3 Address: CYDEV_UCFG_B0_P2_ROUTE_BASE Size (bytes): 128 */ -#define BS_UDBSWITCH_1_3_VAL ((const uint8 CYFAR *)0x48000720u) +#define BS_UDBSWITCH_1_3_VAL ((const uint8 CYFAR *)0x480008C0u) /* UDB_2_3_HV_ROUTING Address: CYDEV_UCFG_B0_P2_ROUTE_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_UDB_2_3_HV_ROUTING_VAL ((const uint8 CYFAR *)0x480007A0u) +#define BS_UDB_2_3_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000940u) /* UDBSWITCH_1_4 Address: CYDEV_UCFG_B0_P1_ROUTE_BASE Size (bytes): 128 */ -#define BS_UDBSWITCH_1_4_VAL ((const uint8 CYFAR *)0x48000820u) +#define BS_UDBSWITCH_1_4_VAL ((const uint8 CYFAR *)0x480009C0u) /* UDB_2_4_HV_ROUTING Address: CYDEV_UCFG_B0_P1_ROUTE_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_UDB_2_4_HV_ROUTING_VAL ((const uint8 CYFAR *)0x480008A0u) +#define BS_UDB_2_4_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000A40u) + +/* UDB_1_5_HV_ROUTING Address: CYDEV_UCFG_B0_P7_ROUTE_BASE + 0x00000080u Size (bytes): 128 */ +#define BS_UDB_1_5_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000AC0u) /* UDBSWITCH_1_5 Address: CYDEV_UCFG_B0_P0_ROUTE_BASE Size (bytes): 128 */ -#define BS_UDBSWITCH_1_5_VAL ((const uint8 CYFAR *)0x48000920u) +#define BS_UDBSWITCH_1_5_VAL ((const uint8 CYFAR *)0x48000B40u) /* UDB_2_5_HV_ROUTING Address: CYDEV_UCFG_B0_P0_ROUTE_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_UDB_2_5_HV_ROUTING_VAL ((const uint8 CYFAR *)0x480009A0u) +#define BS_UDB_2_5_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000BC0u) + +/* DSI3_1_HV_ROUTING Address: CYDEV_UCFG_DSI8_BASE + 0x00000080u Size (bytes): 128 */ +#define BS_DSI3_1_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000C40u) + +/* DSISWITCH_1_2 Address: CYDEV_UCFG_DSI3_BASE Size (bytes): 128 */ +#define BS_DSISWITCH_1_2_VAL ((const uint8 CYFAR *)0x48000CC0u) + +/* DSI3_2_HV_ROUTING Address: CYDEV_UCFG_DSI3_BASE + 0x00000080u Size (bytes): 128 */ +#define BS_DSI3_2_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000D40u) /* DSI3_3_HV_ROUTING Address: CYDEV_UCFG_DSI2_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_DSI3_3_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000A20u) +#define BS_DSI3_3_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000DC0u) /* DSI3_4_HV_ROUTING Address: CYDEV_UCFG_DSI1_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_DSI3_4_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000AA0u) +#define BS_DSI3_4_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000E40u) /* DSISWITCH_1_5 Address: CYDEV_UCFG_DSI0_BASE Size (bytes): 128 */ -#define BS_DSISWITCH_1_5_VAL ((const uint8 CYFAR *)0x48000B20u) +#define BS_DSISWITCH_1_5_VAL ((const uint8 CYFAR *)0x48000EC0u) /* DSI3_5_HV_ROUTING Address: CYDEV_UCFG_DSI0_BASE + 0x00000080u Size (bytes): 128 */ -#define BS_DSI3_5_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000BA0u) +#define BS_DSI3_5_HV_ROUTING_VAL ((const uint8 CYFAR *)0x48000F40u) + +/* UCFG_BCTL1 Address: CYREG_BCTL1_MDCLK_EN Size (bytes): 16 */ +#define BS_UCFG_BCTL1_VAL ((const uint8 CYFAR *)0x48000FC0u) /* UCFG_BCTL0 Address: CYREG_BCTL0_MDCLK_EN Size (bytes): 16 */ -#define BS_UCFG_BCTL0_VAL ((const uint8 CYFAR *)0x48000C20u) +#define BS_UCFG_BCTL0_VAL ((const uint8 CYFAR *)0x48000FD0u) /* IOPINS0_0 Address: CYREG_PRT0_DR Size (bytes): 10 */ -#define BS_IOPINS0_0_VAL ((const uint8 CYFAR *)0x48000C30u) +#define BS_IOPINS0_0_VAL ((const uint8 CYFAR *)0x48000FE0u) /* IOPINS0_2 Address: CYREG_PRT2_DM0 Size (bytes): 8 */ -#define BS_IOPINS0_2_VAL ((const uint8 CYFAR *)0x48000C3Cu) +#define BS_IOPINS0_2_VAL ((const uint8 CYFAR *)0x48000FECu) /* IOPINS0_3 Address: CYREG_PRT3_DR Size (bytes): 10 */ -#define BS_IOPINS0_3_VAL ((const uint8 CYFAR *)0x48000C44u) +#define BS_IOPINS0_3_VAL ((const uint8 CYFAR *)0x48000FF4u) /* IOPORT_0 Address: CYDEV_PRTDSI_PRT0_BASE Size (bytes): 7 */ -#define BS_IOPORT_0_VAL ((const uint8 CYFAR *)0x48000C50u) +#define BS_IOPORT_0_VAL ((const uint8 CYFAR *)0x48001000u) /* IOPORT_3 Address: CYDEV_PRTDSI_PRT3_BASE Size (bytes): 7 */ -#define BS_IOPORT_3_VAL ((const uint8 CYFAR *)0x48000C58u) +#define BS_IOPORT_3_VAL ((const uint8 CYFAR *)0x48001008u) /******************************************************************************* @@ -358,44 +385,52 @@ static void cfg_dma_init(void) { 16u, 0x0Cu, 0x22u, (uint16)(uint32)(0u), (uint16)(CYREG_PRT12_DR) }, /* TD 11 */ { 16u, 0xFFu, 0x22u, (uint16)(uint32)(0u), (uint16)(CYREG_PRT15_DR) }, /* TD 12 */ { 384u, 0x0Eu, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P3_U0_BASE) }, /* TD 13 */ - { 384u, 0x0Fu, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P4_U0_BASE) }, /* TD 14 */ - { 384u, 0x10u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P5_U0_BASE) }, /* TD 15 */ - { 1024u, 0x11u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P6_U0_BASE) }, /* TD 16 */ - { 2048u, 0x12u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B1_P2_U0_BASE) }, /* TD 17 */ + { 896u, 0x0Fu, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P4_U0_BASE) }, /* TD 14 */ + { 896u, 0x10u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P6_U0_BASE) }, /* TD 15 */ + { 384u, 0x11u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B1_P3_U0_BASE) }, /* TD 16 */ + { 1024u, 0x12u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B1_P4_U0_BASE) }, /* TD 17 */ { 128u, 0x13u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI1_BASE) }, /* TD 18 */ { 128u, 0x14u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI2_BASE) }, /* TD 19 */ - { 256u, 0x15u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI3_BASE) }, /* TD 20 */ - { 128u, 0x16u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI5_BASE) }, /* TD 21 */ - { 128u, 0x17u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI6_BASE) }, /* TD 22 */ - { 128u, 0x18u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI7_BASE) }, /* TD 23 */ - { 512u, 0x19u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI8_BASE) }, /* TD 24 */ - { 512u, 0xFFu, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI12_BASE) }, /* TD 25 */ - { 32u, 0xFFu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UWRK_UWRK8_B0_BASE + 0x00000070u) }, /* TD 26 */ + { 128u, 0x15u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI5_BASE) }, /* TD 20 */ + { 128u, 0x16u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI6_BASE) }, /* TD 21 */ + { 384u, 0x17u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI7_BASE) }, /* TD 22 */ + { 256u, 0x18u, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI9_BASE) }, /* TD 23 */ + { 512u, 0xFFu, 0x22u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI12_BASE) }, /* TD 24 */ + { 32u, 0x1Au, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UWRK_UWRK8_B0_BASE + 0x00000070u) }, /* TD 25 */ + { 32u, 0xFFu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UWRK_UWRK8_B1_BASE + 0x00000070u) }, /* TD 26 */ { 128u, 0x1Cu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P0_U0_BASE) }, /* TD 27 */ { 128u, 0x1Du, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P0_U1_BASE) }, /* TD 28 */ { 128u, 0x1Eu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P1_U0_BASE) }, /* TD 29 */ { 128u, 0x1Fu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P1_U1_BASE) }, /* TD 30 */ { 128u, 0x20u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P2_U0_BASE) }, /* TD 31 */ { 128u, 0x21u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P2_U1_BASE) }, /* TD 32 */ - { 128u, 0x22u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI7_BASE + 0x00000080u) }, /* TD 33 */ - { 128u, 0x23u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI6_BASE + 0x00000080u) }, /* TD 34 */ - { 128u, 0x24u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI5_BASE + 0x00000080u) }, /* TD 35 */ - { 128u, 0x25u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI4_BASE) }, /* TD 36 */ - { 128u, 0x26u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI4_BASE + 0x00000080u) }, /* TD 37 */ - { 128u, 0x27u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P4_ROUTE_BASE + 0x00000080u) }, /* TD 38 */ - { 128u, 0x28u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P3_ROUTE_BASE + 0x00000080u) }, /* TD 39 */ - { 128u, 0x29u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P5_ROUTE_BASE + 0x00000080u) }, /* TD 40 */ - { 128u, 0x2Au, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P2_ROUTE_BASE) }, /* TD 41 */ - { 128u, 0x2Bu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P2_ROUTE_BASE + 0x00000080u) }, /* TD 42 */ - { 128u, 0x2Cu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P1_ROUTE_BASE) }, /* TD 43 */ - { 128u, 0x2Du, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P1_ROUTE_BASE + 0x00000080u) }, /* TD 44 */ - { 128u, 0x2Eu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P0_ROUTE_BASE) }, /* TD 45 */ - { 128u, 0x2Fu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P0_ROUTE_BASE + 0x00000080u) }, /* TD 46 */ - { 128u, 0x30u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI2_BASE + 0x00000080u) }, /* TD 47 */ - { 128u, 0x31u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI1_BASE + 0x00000080u) }, /* TD 48 */ - { 128u, 0x32u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI0_BASE) }, /* TD 49 */ - { 128u, 0x33u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI0_BASE + 0x00000080u) }, /* TD 50 */ - { 16u, 0xFFu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYREG_BCTL0_MDCLK_EN) }, /* TD 51 */ + { 128u, 0x22u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B1_P2_U0_BASE) }, /* TD 33 */ + { 128u, 0x23u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B1_P2_U1_BASE) }, /* TD 34 */ + { 128u, 0x24u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI6_BASE + 0x00000080u) }, /* TD 35 */ + { 128u, 0x25u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI5_BASE + 0x00000080u) }, /* TD 36 */ + { 128u, 0x26u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI4_BASE) }, /* TD 37 */ + { 128u, 0x27u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI4_BASE + 0x00000080u) }, /* TD 38 */ + { 128u, 0x28u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B1_P2_ROUTE_BASE) }, /* TD 39 */ + { 128u, 0x29u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B1_P2_ROUTE_BASE + 0x00000080u) }, /* TD 40 */ + { 128u, 0x2Au, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B1_P3_ROUTE_BASE + 0x00000080u) }, /* TD 41 */ + { 128u, 0x2Bu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P3_ROUTE_BASE + 0x00000080u) }, /* TD 42 */ + { 128u, 0x2Cu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P5_ROUTE_BASE + 0x00000080u) }, /* TD 43 */ + { 128u, 0x2Du, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P2_ROUTE_BASE) }, /* TD 44 */ + { 128u, 0x2Eu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P2_ROUTE_BASE + 0x00000080u) }, /* TD 45 */ + { 128u, 0x2Fu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P1_ROUTE_BASE) }, /* TD 46 */ + { 128u, 0x30u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P1_ROUTE_BASE + 0x00000080u) }, /* TD 47 */ + { 128u, 0x31u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P7_ROUTE_BASE + 0x00000080u) }, /* TD 48 */ + { 128u, 0x32u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P0_ROUTE_BASE) }, /* TD 49 */ + { 128u, 0x33u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_B0_P0_ROUTE_BASE + 0x00000080u) }, /* TD 50 */ + { 128u, 0x34u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI8_BASE + 0x00000080u) }, /* TD 51 */ + { 128u, 0x35u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI3_BASE) }, /* TD 52 */ + { 128u, 0x36u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI3_BASE + 0x00000080u) }, /* TD 53 */ + { 128u, 0x37u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI2_BASE + 0x00000080u) }, /* TD 54 */ + { 128u, 0x38u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI1_BASE + 0x00000080u) }, /* TD 55 */ + { 128u, 0x39u, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI0_BASE) }, /* TD 56 */ + { 128u, 0x3Au, 0x23u, (uint16)(uint32)(0u), (uint16)(CYDEV_UCFG_DSI0_BASE + 0x00000080u) }, /* TD 57 */ + { 16u, 0x3Bu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYREG_BCTL1_MDCLK_EN) }, /* TD 58 */ + { 16u, 0xFFu, 0x23u, (uint16)(uint32)(0u), (uint16)(CYREG_BCTL0_MDCLK_EN) }, /* TD 59 */ }; /* Source addresses can be relocated, but only when in 32bit addresses. @@ -428,33 +463,41 @@ static void cfg_dma_init(void) (const void *)(&DMA_ZERO_VAL), /* TD 22 */ (const void *)(&DMA_ZERO_VAL), /* TD 23 */ (const void *)(&DMA_ZERO_VAL), /* TD 24 */ - (const void *)(&DMA_ZERO_VAL), /* TD 25 */ - (const void *)(BS_UWRK_B0_WRK_STATCTL_BITS_VAL), /* TD 26 */ + (const void *)(BS_UWRK_B0_WRK_STATCTL_BITS_VAL), /* TD 25 */ + (const void *)(BS_UWRK_B1_WRK_STATCTL_BITS_VAL), /* TD 26 */ (const void *)(BS_UDB_1_5_0_CONFIG_VAL), /* TD 27 */ (const void *)(BS_UDB_1_5_1_CONFIG_VAL), /* TD 28 */ (const void *)(BS_UDB_1_4_1_CONFIG_VAL), /* TD 29 */ (const void *)(BS_UDB_1_4_0_CONFIG_VAL), /* TD 30 */ (const void *)(BS_UDB_1_3_0_CONFIG_VAL), /* TD 31 */ (const void *)(BS_UDB_1_3_1_CONFIG_VAL), /* TD 32 */ - (const void *)(BS_DSI0_2_HV_ROUTING_VAL), /* TD 33 */ - (const void *)(BS_DSI0_3_HV_ROUTING_VAL), /* TD 34 */ - (const void *)(BS_DSI0_4_HV_ROUTING_VAL), /* TD 35 */ - (const void *)(BS_DSISWITCH_0_5_VAL), /* TD 36 */ - (const void *)(BS_DSI0_5_HV_ROUTING_VAL), /* TD 37 */ - (const void *)(BS_UDB_1_2_HV_ROUTING_VAL), /* TD 38 */ - (const void *)(BS_UDB_2_2_HV_ROUTING_VAL), /* TD 39 */ - (const void *)(BS_UDB_1_3_HV_ROUTING_VAL), /* TD 40 */ - (const void *)(BS_UDBSWITCH_1_3_VAL), /* TD 41 */ - (const void *)(BS_UDB_2_3_HV_ROUTING_VAL), /* TD 42 */ - (const void *)(BS_UDBSWITCH_1_4_VAL), /* TD 43 */ - (const void *)(BS_UDB_2_4_HV_ROUTING_VAL), /* TD 44 */ - (const void *)(BS_UDBSWITCH_1_5_VAL), /* TD 45 */ - (const void *)(BS_UDB_2_5_HV_ROUTING_VAL), /* TD 46 */ - (const void *)(BS_DSI3_3_HV_ROUTING_VAL), /* TD 47 */ - (const void *)(BS_DSI3_4_HV_ROUTING_VAL), /* TD 48 */ - (const void *)(BS_DSISWITCH_1_5_VAL), /* TD 49 */ - (const void *)(BS_DSI3_5_HV_ROUTING_VAL), /* TD 50 */ - (const void *)(BS_UCFG_BCTL0_VAL), /* TD 51 */ + (const void *)(BS_UDB_1_0_0_CONFIG_VAL), /* TD 33 */ + (const void *)(BS_UDB_1_0_1_CONFIG_VAL), /* TD 34 */ + (const void *)(BS_DSI0_3_HV_ROUTING_VAL), /* TD 35 */ + (const void *)(BS_DSI0_4_HV_ROUTING_VAL), /* TD 36 */ + (const void *)(BS_DSISWITCH_0_5_VAL), /* TD 37 */ + (const void *)(BS_DSI0_5_HV_ROUTING_VAL), /* TD 38 */ + (const void *)(BS_UDBSWITCH_1_0_VAL), /* TD 39 */ + (const void *)(BS_UDB_2_0_HV_ROUTING_VAL), /* TD 40 */ + (const void *)(BS_UDB_2_1_HV_ROUTING_VAL), /* TD 41 */ + (const void *)(BS_UDB_2_2_HV_ROUTING_VAL), /* TD 42 */ + (const void *)(BS_UDB_1_3_HV_ROUTING_VAL), /* TD 43 */ + (const void *)(BS_UDBSWITCH_1_3_VAL), /* TD 44 */ + (const void *)(BS_UDB_2_3_HV_ROUTING_VAL), /* TD 45 */ + (const void *)(BS_UDBSWITCH_1_4_VAL), /* TD 46 */ + (const void *)(BS_UDB_2_4_HV_ROUTING_VAL), /* TD 47 */ + (const void *)(BS_UDB_1_5_HV_ROUTING_VAL), /* TD 48 */ + (const void *)(BS_UDBSWITCH_1_5_VAL), /* TD 49 */ + (const void *)(BS_UDB_2_5_HV_ROUTING_VAL), /* TD 50 */ + (const void *)(BS_DSI3_1_HV_ROUTING_VAL), /* TD 51 */ + (const void *)(BS_DSISWITCH_1_2_VAL), /* TD 52 */ + (const void *)(BS_DSI3_2_HV_ROUTING_VAL), /* TD 53 */ + (const void *)(BS_DSI3_3_HV_ROUTING_VAL), /* TD 54 */ + (const void *)(BS_DSI3_4_HV_ROUTING_VAL), /* TD 55 */ + (const void *)(BS_DSISWITCH_1_5_VAL), /* TD 56 */ + (const void *)(BS_DSI3_5_HV_ROUTING_VAL), /* TD 57 */ + (const void *)(BS_UCFG_BCTL1_VAL), /* TD 58 */ + (const void *)(BS_UCFG_BCTL0_VAL), /* TD 59 */ }; @@ -464,7 +507,7 @@ static void cfg_dma_init(void) CY_SET_REG8((void CYXDATA *)CYREG_PHUB_CFGMEM0_CFG0, 0x10u); /* set burstcnt */ CY_SET_REG8((void CYXDATA *)CYREG_PHUB_CH0_BASIC_CFG, 0x01u); /* enable ch0 */ CY_SET_REG8((void CYXDATA *)(CYREG_PHUB_CH0_BASIC_STATUS+1u), 0x00u); /* set first TD to 0 */ - CY_SET_REG16((void CYXDATA *)CYREG_PHUB_TDMEM0_ORIG_TD0, 51u*8u); /* transfer size */ + CY_SET_REG16((void CYXDATA *)CYREG_PHUB_TDMEM0_ORIG_TD0, 59u*8u); /* transfer size */ CY_SET_REG8((void CYXDATA *)(CYREG_PHUB_TDMEM0_ORIG_TD0+2u), 0x01u); /* set next TD to 1 */ CY_SET_REG8((void CYXDATA *)(CYREG_PHUB_TDMEM0_ORIG_TD0+3u), 0x03u); /* set TD flags */ CY_SET_REG16((void CYXDATA *)CYREG_PHUB_TDMEM0_ORIG_TD1, (uint16)(uint32)CFG_TD_LIST0); /* set td0's src addr */ @@ -473,7 +516,7 @@ static void cfg_dma_init(void) CY_SET_REG16((void CYXDATA *)(CYREG_PHUB_CFGMEM0_CFG1+2u), (uint16)(CYDEV_PHUB_TDMEM1_BASE >> 16)); /* set ch0's dst high addr */ CY_SET_REG8((void CYXDATA *)(CYREG_PHUB_CH1_BASIC_STATUS+1u), 0x09u); /* ch1 first TD: 9 */ CY_SET_REG8((void CYXDATA *)(CYREG_PHUB_CH2_BASIC_STATUS+1u), 0x0Du); /* ch2 first TD: 13 */ - CY_SET_REG8((void CYXDATA *)(CYREG_PHUB_CH5_BASIC_STATUS+1u), 0x1Au); /* ch5 first TD: 26 */ + CY_SET_REG8((void CYXDATA *)(CYREG_PHUB_CH5_BASIC_STATUS+1u), 0x19u); /* ch5 first TD: 25 */ CY_SET_REG8((void CYXDATA *)(CYREG_PHUB_CH6_BASIC_STATUS+1u), 0x1Bu); /* ch6 first TD: 27 */ CY_CFG_MEMORY_BARRIER(); @@ -484,7 +527,7 @@ static void cfg_dma_init(void) while (CY_GET_REG16((void CYXDATA *)CYREG_PHUB_TDMEM0_ORIG_TD0) != 0u) { } /* Recombine TD source table (CFG_TD_ADDR0) with full TD table (CFG_TD_LIST0) */ - for (i = 0u; i < 51u; i++) + for (i = 0u; i < 59u; i++) { CY_SET_REG16((void CYXDATA *)(CYREG_PHUB_TDMEM1_ORIG_TD1 + (sizeof(struct td_t)*i)), (uint16)(uint32)CFG_TD_ADDR0[i]); } @@ -527,15 +570,13 @@ static void cfg_dma_init(void) static void ClockSetup(void); static void ClockSetup(void) { - uint32 timeout; - uint8 pllLock; /* Configure Digital Clocks based on settings from Clock DWR */ CY_SET_XTND_REG16((void CYFAR *)(CYREG_CLKDIST_DCFG0_CFG0), 0x000Bu); - CY_SET_XTND_REG8((void CYFAR *)(CYREG_CLKDIST_DCFG0_CFG0 + 0x2), 0x18u); + CY_SET_XTND_REG8((void CYFAR *)(CYREG_CLKDIST_DCFG0_CFG0 + 0x2u), 0x18u); CY_SET_XTND_REG16((void CYFAR *)(CYREG_CLKDIST_DCFG1_CFG0), 0x0019u); - CY_SET_XTND_REG8((void CYFAR *)(CYREG_CLKDIST_DCFG1_CFG0 + 0x2), 0x18u); + CY_SET_XTND_REG8((void CYFAR *)(CYREG_CLKDIST_DCFG1_CFG0 + 0x2u), 0x18u); /* Configure ILO based on settings from Clock DWR */ CY_SET_XTND_REG8((void CYFAR *)(CYREG_SLOWCLK_ILO_CR0), 0x02u); @@ -548,12 +589,8 @@ static void ClockSetup(void) /* Configure PLL based on settings from Clock DWR */ CY_SET_XTND_REG16((void CYFAR *)(CYREG_FASTCLK_PLL_P), 0x0008u); CY_SET_XTND_REG16((void CYFAR *)(CYREG_FASTCLK_PLL_CFG0), 0x1051u); - /* Wait up to 250us for the PLL to lock */ - pllLock = 0u; - for (timeout = 250u / 10u; (timeout > 0u) && (pllLock != 0x03u); timeout--) { - pllLock = 0x03u & ((uint8)((uint8)pllLock << 1) | ((CY_GET_XTND_REG8((void CYFAR *)CYREG_FASTCLK_PLL_SR) & 0x01u) >> 0)); - CyDelayCycles(10u * 12u); /* Delay 10us based on 12MHz clock */ - } + /* Wait 250us for the PLL to lock */ + CyDelayCycles(250u * 12u); /* Delay 250us based on 12MHz clock */ /* Configure Bus/Master Clock based on settings from Clock DWR */ CY_SET_XTND_REG8((void CYFAR *)(CYREG_CLKDIST_MSTR0), 0x03u); @@ -653,6 +690,7 @@ void SetAnalogRoutingPumps(uint8 enabled) * void * *******************************************************************************/ + void cyfitter_cfg(void) { #ifdef CYGlobalIntDisable diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyfitter_cfg.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyfitter_cfg.h index e3c9cdf..06bfc82 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyfitter_cfg.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyfitter_cfg.h @@ -1,6 +1,6 @@ /******************************************************************************* * FILENAME: cyfitter_cfg.h -* PSoC Creator 2.2 Component Pack 5 +* PSoC Creator 2.2 Component Pack 6 * * Description: * This file is automatically generated by PSoC Creator. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyfittergnu.inc b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyfittergnu.inc index 96bbbe9..2c4dc87 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyfittergnu.inc +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyfittergnu.inc @@ -3,6 +3,80 @@ .include "cydevicegnu.inc" .include "cydevicegnu_trm.inc" +/* Timer_1_TimerUDB */ +.set Timer_1_TimerUDB_nrstSts_stsreg__0__MASK, 0x01 +.set Timer_1_TimerUDB_nrstSts_stsreg__0__POS, 0 +.set Timer_1_TimerUDB_nrstSts_stsreg__16BIT_STATUS_AUX_CTL_REG, CYREG_B1_UDB04_05_ACTL +.set Timer_1_TimerUDB_nrstSts_stsreg__16BIT_STATUS_REG, CYREG_B1_UDB04_05_ST +.set Timer_1_TimerUDB_nrstSts_stsreg__2__MASK, 0x04 +.set Timer_1_TimerUDB_nrstSts_stsreg__2__POS, 2 +.set Timer_1_TimerUDB_nrstSts_stsreg__3__MASK, 0x08 +.set Timer_1_TimerUDB_nrstSts_stsreg__3__POS, 3 +.set Timer_1_TimerUDB_nrstSts_stsreg__MASK, 0x0D +.set Timer_1_TimerUDB_nrstSts_stsreg__MASK_REG, CYREG_B1_UDB04_MSK +.set Timer_1_TimerUDB_nrstSts_stsreg__MASK_ST_AUX_CTL_REG, CYREG_B1_UDB04_MSK_ACTL +.set Timer_1_TimerUDB_nrstSts_stsreg__PER_ST_AUX_CTL_REG, CYREG_B1_UDB04_MSK_ACTL +.set Timer_1_TimerUDB_nrstSts_stsreg__STATUS_AUX_CTL_REG, CYREG_B1_UDB04_ACTL +.set Timer_1_TimerUDB_nrstSts_stsreg__STATUS_CNT_REG, CYREG_B1_UDB04_ST_CTL +.set Timer_1_TimerUDB_nrstSts_stsreg__STATUS_CONTROL_REG, CYREG_B1_UDB04_ST_CTL +.set Timer_1_TimerUDB_nrstSts_stsreg__STATUS_REG, CYREG_B1_UDB04_ST +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_CONTROL_AUX_CTL_REG, CYREG_B1_UDB04_05_ACTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_CONTROL_CONTROL_REG, CYREG_B1_UDB04_05_CTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_CONTROL_COUNT_REG, CYREG_B1_UDB04_05_CTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_COUNT_CONTROL_REG, CYREG_B1_UDB04_05_CTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_COUNT_COUNT_REG, CYREG_B1_UDB04_05_CTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_MASK_MASK_REG, CYREG_B1_UDB04_05_MSK +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_MASK_PERIOD_REG, CYREG_B1_UDB04_05_MSK +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_PERIOD_MASK_REG, CYREG_B1_UDB04_05_MSK +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_PERIOD_PERIOD_REG, CYREG_B1_UDB04_05_MSK +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__7__MASK, 0x80 +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__7__POS, 7 +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__CONTROL_AUX_CTL_REG, CYREG_B1_UDB04_ACTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__CONTROL_REG, CYREG_B1_UDB04_CTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__CONTROL_ST_REG, CYREG_B1_UDB04_ST_CTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__COUNT_REG, CYREG_B1_UDB04_CTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__COUNT_ST_REG, CYREG_B1_UDB04_ST_CTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__MASK, 0x80 +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__MASK_CTL_AUX_CTL_REG, CYREG_B1_UDB04_MSK_ACTL +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__PERIOD_REG, CYREG_B1_UDB04_MSK +.set Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__PER_CTL_AUX_CTL_REG, CYREG_B1_UDB04_MSK_ACTL +.set Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_A0_REG, CYREG_B1_UDB04_05_A0 +.set Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_A1_REG, CYREG_B1_UDB04_05_A1 +.set Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_D0_REG, CYREG_B1_UDB04_05_D0 +.set Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_D1_REG, CYREG_B1_UDB04_05_D1 +.set Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_DP_AUX_CTL_REG, CYREG_B1_UDB04_05_ACTL +.set Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_F0_REG, CYREG_B1_UDB04_05_F0 +.set Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_F1_REG, CYREG_B1_UDB04_05_F1 +.set Timer_1_TimerUDB_sT16_timerdp_u0__A0_A1_REG, CYREG_B1_UDB04_A0_A1 +.set Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG, CYREG_B1_UDB04_A0 +.set Timer_1_TimerUDB_sT16_timerdp_u0__A1_REG, CYREG_B1_UDB04_A1 +.set Timer_1_TimerUDB_sT16_timerdp_u0__D0_D1_REG, CYREG_B1_UDB04_D0_D1 +.set Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG, CYREG_B1_UDB04_D0 +.set Timer_1_TimerUDB_sT16_timerdp_u0__D1_REG, CYREG_B1_UDB04_D1 +.set Timer_1_TimerUDB_sT16_timerdp_u0__DP_AUX_CTL_REG, CYREG_B1_UDB04_ACTL +.set Timer_1_TimerUDB_sT16_timerdp_u0__F0_F1_REG, CYREG_B1_UDB04_F0_F1 +.set Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG, CYREG_B1_UDB04_F0 +.set Timer_1_TimerUDB_sT16_timerdp_u0__F1_REG, CYREG_B1_UDB04_F1 +.set Timer_1_TimerUDB_sT16_timerdp_u0__MSK_DP_AUX_CTL_REG, CYREG_B1_UDB04_MSK_ACTL +.set Timer_1_TimerUDB_sT16_timerdp_u0__PER_DP_AUX_CTL_REG, CYREG_B1_UDB04_MSK_ACTL +.set Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_A0_REG, CYREG_B1_UDB05_06_A0 +.set Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_A1_REG, CYREG_B1_UDB05_06_A1 +.set Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_D0_REG, CYREG_B1_UDB05_06_D0 +.set Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_D1_REG, CYREG_B1_UDB05_06_D1 +.set Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_DP_AUX_CTL_REG, CYREG_B1_UDB05_06_ACTL +.set Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_F0_REG, CYREG_B1_UDB05_06_F0 +.set Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_F1_REG, CYREG_B1_UDB05_06_F1 +.set Timer_1_TimerUDB_sT16_timerdp_u1__A0_A1_REG, CYREG_B1_UDB05_A0_A1 +.set Timer_1_TimerUDB_sT16_timerdp_u1__A0_REG, CYREG_B1_UDB05_A0 +.set Timer_1_TimerUDB_sT16_timerdp_u1__A1_REG, CYREG_B1_UDB05_A1 +.set Timer_1_TimerUDB_sT16_timerdp_u1__D0_D1_REG, CYREG_B1_UDB05_D0_D1 +.set Timer_1_TimerUDB_sT16_timerdp_u1__D0_REG, CYREG_B1_UDB05_D0 +.set Timer_1_TimerUDB_sT16_timerdp_u1__D1_REG, CYREG_B1_UDB05_D1 +.set Timer_1_TimerUDB_sT16_timerdp_u1__DP_AUX_CTL_REG, CYREG_B1_UDB05_ACTL +.set Timer_1_TimerUDB_sT16_timerdp_u1__F0_F1_REG, CYREG_B1_UDB05_F0_F1 +.set Timer_1_TimerUDB_sT16_timerdp_u1__F0_REG, CYREG_B1_UDB05_F0 +.set Timer_1_TimerUDB_sT16_timerdp_u1__F1_REG, CYREG_B1_UDB05_F1 + /* SPIM_IntClock */ .set SPIM_IntClock__CFG0, CYREG_CLKDIST_DCFG0_CFG0 .set SPIM_IntClock__CFG1, CYREG_CLKDIST_DCFG0_CFG1 @@ -15,27 +89,27 @@ .set SPIM_IntClock__PM_STBY_MSK, 0x01 /* UART_1_BUART */ -.set UART_1_BUART_sTX_TxShifter_u0__16BIT_A0_REG, CYREG_B0_UDB01_02_A0 -.set UART_1_BUART_sTX_TxShifter_u0__16BIT_A1_REG, CYREG_B0_UDB01_02_A1 -.set UART_1_BUART_sTX_TxShifter_u0__16BIT_D0_REG, CYREG_B0_UDB01_02_D0 -.set UART_1_BUART_sTX_TxShifter_u0__16BIT_D1_REG, CYREG_B0_UDB01_02_D1 -.set UART_1_BUART_sTX_TxShifter_u0__16BIT_DP_AUX_CTL_REG, CYREG_B0_UDB01_02_ACTL -.set UART_1_BUART_sTX_TxShifter_u0__16BIT_F0_REG, CYREG_B0_UDB01_02_F0 -.set UART_1_BUART_sTX_TxShifter_u0__16BIT_F1_REG, CYREG_B0_UDB01_02_F1 -.set UART_1_BUART_sTX_TxShifter_u0__A0_A1_REG, CYREG_B0_UDB01_A0_A1 -.set UART_1_BUART_sTX_TxShifter_u0__A0_REG, CYREG_B0_UDB01_A0 -.set UART_1_BUART_sTX_TxShifter_u0__A1_REG, CYREG_B0_UDB01_A1 -.set UART_1_BUART_sTX_TxShifter_u0__D0_D1_REG, CYREG_B0_UDB01_D0_D1 -.set UART_1_BUART_sTX_TxShifter_u0__D0_REG, CYREG_B0_UDB01_D0 -.set UART_1_BUART_sTX_TxShifter_u0__D1_REG, CYREG_B0_UDB01_D1 -.set UART_1_BUART_sTX_TxShifter_u0__DP_AUX_CTL_REG, CYREG_B0_UDB01_ACTL -.set UART_1_BUART_sTX_TxShifter_u0__F0_F1_REG, CYREG_B0_UDB01_F0_F1 -.set UART_1_BUART_sTX_TxShifter_u0__F0_REG, CYREG_B0_UDB01_F0 -.set UART_1_BUART_sTX_TxShifter_u0__F1_REG, CYREG_B0_UDB01_F1 +.set UART_1_BUART_sTX_TxShifter_u0__16BIT_A0_REG, CYREG_B0_UDB04_05_A0 +.set UART_1_BUART_sTX_TxShifter_u0__16BIT_A1_REG, CYREG_B0_UDB04_05_A1 +.set UART_1_BUART_sTX_TxShifter_u0__16BIT_D0_REG, CYREG_B0_UDB04_05_D0 +.set UART_1_BUART_sTX_TxShifter_u0__16BIT_D1_REG, CYREG_B0_UDB04_05_D1 +.set UART_1_BUART_sTX_TxShifter_u0__16BIT_DP_AUX_CTL_REG, CYREG_B0_UDB04_05_ACTL +.set UART_1_BUART_sTX_TxShifter_u0__16BIT_F0_REG, CYREG_B0_UDB04_05_F0 +.set UART_1_BUART_sTX_TxShifter_u0__16BIT_F1_REG, CYREG_B0_UDB04_05_F1 +.set UART_1_BUART_sTX_TxShifter_u0__A0_A1_REG, CYREG_B0_UDB04_A0_A1 +.set UART_1_BUART_sTX_TxShifter_u0__A0_REG, CYREG_B0_UDB04_A0 +.set UART_1_BUART_sTX_TxShifter_u0__A1_REG, CYREG_B0_UDB04_A1 +.set UART_1_BUART_sTX_TxShifter_u0__D0_D1_REG, CYREG_B0_UDB04_D0_D1 +.set UART_1_BUART_sTX_TxShifter_u0__D0_REG, CYREG_B0_UDB04_D0 +.set UART_1_BUART_sTX_TxShifter_u0__D1_REG, CYREG_B0_UDB04_D1 +.set UART_1_BUART_sTX_TxShifter_u0__DP_AUX_CTL_REG, CYREG_B0_UDB04_ACTL +.set UART_1_BUART_sTX_TxShifter_u0__F0_F1_REG, CYREG_B0_UDB04_F0_F1 +.set UART_1_BUART_sTX_TxShifter_u0__F0_REG, CYREG_B0_UDB04_F0 +.set UART_1_BUART_sTX_TxShifter_u0__F1_REG, CYREG_B0_UDB04_F1 .set UART_1_BUART_sTX_TxSts__0__MASK, 0x01 .set UART_1_BUART_sTX_TxSts__0__POS, 0 -.set UART_1_BUART_sTX_TxSts__16BIT_STATUS_AUX_CTL_REG, CYREG_B0_UDB02_03_ACTL -.set UART_1_BUART_sTX_TxSts__16BIT_STATUS_REG, CYREG_B0_UDB02_03_ST +.set UART_1_BUART_sTX_TxSts__16BIT_STATUS_AUX_CTL_REG, CYREG_B0_UDB04_05_ACTL +.set UART_1_BUART_sTX_TxSts__16BIT_STATUS_REG, CYREG_B0_UDB04_05_ST .set UART_1_BUART_sTX_TxSts__1__MASK, 0x02 .set UART_1_BUART_sTX_TxSts__1__POS, 1 .set UART_1_BUART_sTX_TxSts__2__MASK, 0x04 @@ -43,26 +117,26 @@ .set UART_1_BUART_sTX_TxSts__3__MASK, 0x08 .set UART_1_BUART_sTX_TxSts__3__POS, 3 .set UART_1_BUART_sTX_TxSts__MASK, 0x0F -.set UART_1_BUART_sTX_TxSts__MASK_REG, CYREG_B0_UDB02_MSK -.set UART_1_BUART_sTX_TxSts__STATUS_AUX_CTL_REG, CYREG_B0_UDB02_ACTL -.set UART_1_BUART_sTX_TxSts__STATUS_REG, CYREG_B0_UDB02_ST -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A0_REG, CYREG_B0_UDB00_01_A0 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A1_REG, CYREG_B0_UDB00_01_A1 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D0_REG, CYREG_B0_UDB00_01_D0 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D1_REG, CYREG_B0_UDB00_01_D1 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_DP_AUX_CTL_REG, CYREG_B0_UDB00_01_ACTL -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F0_REG, CYREG_B0_UDB00_01_F0 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F1_REG, CYREG_B0_UDB00_01_F1 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_A1_REG, CYREG_B0_UDB00_A0_A1 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_REG, CYREG_B0_UDB00_A0 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A1_REG, CYREG_B0_UDB00_A1 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_D1_REG, CYREG_B0_UDB00_D0_D1 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_REG, CYREG_B0_UDB00_D0 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D1_REG, CYREG_B0_UDB00_D1 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__DP_AUX_CTL_REG, CYREG_B0_UDB00_ACTL -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_F1_REG, CYREG_B0_UDB00_F0_F1 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_REG, CYREG_B0_UDB00_F0 -.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F1_REG, CYREG_B0_UDB00_F1 +.set UART_1_BUART_sTX_TxSts__MASK_REG, CYREG_B0_UDB04_MSK +.set UART_1_BUART_sTX_TxSts__STATUS_AUX_CTL_REG, CYREG_B0_UDB04_ACTL +.set UART_1_BUART_sTX_TxSts__STATUS_REG, CYREG_B0_UDB04_ST +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A0_REG, CYREG_B0_UDB05_06_A0 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A1_REG, CYREG_B0_UDB05_06_A1 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D0_REG, CYREG_B0_UDB05_06_D0 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D1_REG, CYREG_B0_UDB05_06_D1 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_DP_AUX_CTL_REG, CYREG_B0_UDB05_06_ACTL +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F0_REG, CYREG_B0_UDB05_06_F0 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F1_REG, CYREG_B0_UDB05_06_F1 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_A1_REG, CYREG_B0_UDB05_A0_A1 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_REG, CYREG_B0_UDB05_A0 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A1_REG, CYREG_B0_UDB05_A1 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_D1_REG, CYREG_B0_UDB05_D0_D1 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_REG, CYREG_B0_UDB05_D0 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D1_REG, CYREG_B0_UDB05_D1 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__DP_AUX_CTL_REG, CYREG_B0_UDB05_ACTL +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_F1_REG, CYREG_B0_UDB05_F0_F1 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_REG, CYREG_B0_UDB05_F0 +.set UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F1_REG, CYREG_B0_UDB05_F1 /* LCD_LCDPort */ .set LCD_LCDPort__0__MASK, 0x01 @@ -243,8 +317,8 @@ .set SPIM_BSPIM_BitCounter__MASK_CTL_AUX_CTL_REG, CYREG_B0_UDB03_MSK_ACTL .set SPIM_BSPIM_BitCounter__PERIOD_REG, CYREG_B0_UDB03_MSK .set SPIM_BSPIM_BitCounter__PER_CTL_AUX_CTL_REG, CYREG_B0_UDB03_MSK_ACTL -.set SPIM_BSPIM_RxStsReg__16BIT_STATUS_AUX_CTL_REG, CYREG_B0_UDB00_01_ACTL -.set SPIM_BSPIM_RxStsReg__16BIT_STATUS_REG, CYREG_B0_UDB00_01_ST +.set SPIM_BSPIM_RxStsReg__16BIT_STATUS_AUX_CTL_REG, CYREG_B0_UDB02_03_ACTL +.set SPIM_BSPIM_RxStsReg__16BIT_STATUS_REG, CYREG_B0_UDB02_03_ST .set SPIM_BSPIM_RxStsReg__4__MASK, 0x10 .set SPIM_BSPIM_RxStsReg__4__POS, 4 .set SPIM_BSPIM_RxStsReg__5__MASK, 0x20 @@ -252,13 +326,13 @@ .set SPIM_BSPIM_RxStsReg__6__MASK, 0x40 .set SPIM_BSPIM_RxStsReg__6__POS, 6 .set SPIM_BSPIM_RxStsReg__MASK, 0x70 -.set SPIM_BSPIM_RxStsReg__MASK_REG, CYREG_B0_UDB00_MSK -.set SPIM_BSPIM_RxStsReg__STATUS_AUX_CTL_REG, CYREG_B0_UDB00_ACTL -.set SPIM_BSPIM_RxStsReg__STATUS_REG, CYREG_B0_UDB00_ST +.set SPIM_BSPIM_RxStsReg__MASK_REG, CYREG_B0_UDB02_MSK +.set SPIM_BSPIM_RxStsReg__STATUS_AUX_CTL_REG, CYREG_B0_UDB02_ACTL +.set SPIM_BSPIM_RxStsReg__STATUS_REG, CYREG_B0_UDB02_ST .set SPIM_BSPIM_TxStsReg__0__MASK, 0x01 .set SPIM_BSPIM_TxStsReg__0__POS, 0 -.set SPIM_BSPIM_TxStsReg__16BIT_STATUS_AUX_CTL_REG, CYREG_B0_UDB04_05_ACTL -.set SPIM_BSPIM_TxStsReg__16BIT_STATUS_REG, CYREG_B0_UDB04_05_ST +.set SPIM_BSPIM_TxStsReg__16BIT_STATUS_AUX_CTL_REG, CYREG_B0_UDB00_01_ACTL +.set SPIM_BSPIM_TxStsReg__16BIT_STATUS_REG, CYREG_B0_UDB00_01_ST .set SPIM_BSPIM_TxStsReg__1__MASK, 0x02 .set SPIM_BSPIM_TxStsReg__1__POS, 1 .set SPIM_BSPIM_TxStsReg__2__MASK, 0x04 @@ -268,9 +342,9 @@ .set SPIM_BSPIM_TxStsReg__4__MASK, 0x10 .set SPIM_BSPIM_TxStsReg__4__POS, 4 .set SPIM_BSPIM_TxStsReg__MASK, 0x1F -.set SPIM_BSPIM_TxStsReg__MASK_REG, CYREG_B0_UDB04_MSK -.set SPIM_BSPIM_TxStsReg__STATUS_AUX_CTL_REG, CYREG_B0_UDB04_ACTL -.set SPIM_BSPIM_TxStsReg__STATUS_REG, CYREG_B0_UDB04_ST +.set SPIM_BSPIM_TxStsReg__MASK_REG, CYREG_B0_UDB00_MSK +.set SPIM_BSPIM_TxStsReg__STATUS_AUX_CTL_REG, CYREG_B0_UDB00_ACTL +.set SPIM_BSPIM_TxStsReg__STATUS_REG, CYREG_B0_UDB00_ST .set SPIM_BSPIM_sR8_Dp_u0__16BIT_A0_REG, CYREG_B0_UDB03_04_A0 .set SPIM_BSPIM_sR8_Dp_u0__16BIT_A1_REG, CYREG_B0_UDB03_04_A1 .set SPIM_BSPIM_sR8_Dp_u0__16BIT_D0_REG, CYREG_B0_UDB03_04_D0 @@ -430,6 +504,38 @@ .set Pin_4__SHIFT, 3 .set Pin_4__SLW, CYREG_PRT3_SLW +/* Pin_5 */ +.set Pin_5__0__MASK, 0x10 +.set Pin_5__0__PC, CYREG_PRT3_PC4 +.set Pin_5__0__PORT, 3 +.set Pin_5__0__SHIFT, 4 +.set Pin_5__AG, CYREG_PRT3_AG +.set Pin_5__AMUX, CYREG_PRT3_AMUX +.set Pin_5__BIE, CYREG_PRT3_BIE +.set Pin_5__BIT_MASK, CYREG_PRT3_BIT_MASK +.set Pin_5__BYP, CYREG_PRT3_BYP +.set Pin_5__CTL, CYREG_PRT3_CTL +.set Pin_5__DM0, CYREG_PRT3_DM0 +.set Pin_5__DM1, CYREG_PRT3_DM1 +.set Pin_5__DM2, CYREG_PRT3_DM2 +.set Pin_5__DR, CYREG_PRT3_DR +.set Pin_5__INP_DIS, CYREG_PRT3_INP_DIS +.set Pin_5__LCD_COM_SEG, CYREG_PRT3_LCD_COM_SEG +.set Pin_5__LCD_EN, CYREG_PRT3_LCD_EN +.set Pin_5__MASK, 0x10 +.set Pin_5__PORT, 3 +.set Pin_5__PRT, CYREG_PRT3_PRT +.set Pin_5__PRTDSI__CAPS_SEL, CYREG_PRT3_CAPS_SEL +.set Pin_5__PRTDSI__DBL_SYNC_IN, CYREG_PRT3_DBL_SYNC_IN +.set Pin_5__PRTDSI__OE_SEL0, CYREG_PRT3_OE_SEL0 +.set Pin_5__PRTDSI__OE_SEL1, CYREG_PRT3_OE_SEL1 +.set Pin_5__PRTDSI__OUT_SEL0, CYREG_PRT3_OUT_SEL0 +.set Pin_5__PRTDSI__OUT_SEL1, CYREG_PRT3_OUT_SEL1 +.set Pin_5__PRTDSI__SYNC_OUT, CYREG_PRT3_SYNC_OUT +.set Pin_5__PS, CYREG_PRT3_PS +.set Pin_5__SHIFT, 4 +.set Pin_5__SLW, CYREG_PRT3_SLW + /* Tx_1 */ .set Tx_1__0__MASK, 0x80 .set Tx_1__0__PC, CYREG_PRT3_PC7 @@ -465,26 +571,28 @@ /* SS */ .set SS_Async_ctrl_reg__0__MASK, 0x01 .set SS_Async_ctrl_reg__0__POS, 0 -.set SS_Async_ctrl_reg__16BIT_CONTROL_AUX_CTL_REG, CYREG_B0_UDB05_06_ACTL -.set SS_Async_ctrl_reg__16BIT_CONTROL_CONTROL_REG, CYREG_B0_UDB05_06_CTL -.set SS_Async_ctrl_reg__16BIT_CONTROL_COUNT_REG, CYREG_B0_UDB05_06_CTL -.set SS_Async_ctrl_reg__16BIT_COUNT_CONTROL_REG, CYREG_B0_UDB05_06_CTL -.set SS_Async_ctrl_reg__16BIT_COUNT_COUNT_REG, CYREG_B0_UDB05_06_CTL -.set SS_Async_ctrl_reg__16BIT_MASK_MASK_REG, CYREG_B0_UDB05_06_MSK -.set SS_Async_ctrl_reg__16BIT_MASK_PERIOD_REG, CYREG_B0_UDB05_06_MSK -.set SS_Async_ctrl_reg__16BIT_PERIOD_MASK_REG, CYREG_B0_UDB05_06_MSK -.set SS_Async_ctrl_reg__16BIT_PERIOD_PERIOD_REG, CYREG_B0_UDB05_06_MSK +.set SS_Async_ctrl_reg__16BIT_CONTROL_AUX_CTL_REG, CYREG_B0_UDB01_02_ACTL +.set SS_Async_ctrl_reg__16BIT_CONTROL_CONTROL_REG, CYREG_B0_UDB01_02_CTL +.set SS_Async_ctrl_reg__16BIT_CONTROL_COUNT_REG, CYREG_B0_UDB01_02_CTL +.set SS_Async_ctrl_reg__16BIT_COUNT_CONTROL_REG, CYREG_B0_UDB01_02_CTL +.set SS_Async_ctrl_reg__16BIT_COUNT_COUNT_REG, CYREG_B0_UDB01_02_CTL +.set SS_Async_ctrl_reg__16BIT_MASK_MASK_REG, CYREG_B0_UDB01_02_MSK +.set SS_Async_ctrl_reg__16BIT_MASK_PERIOD_REG, CYREG_B0_UDB01_02_MSK +.set SS_Async_ctrl_reg__16BIT_PERIOD_MASK_REG, CYREG_B0_UDB01_02_MSK +.set SS_Async_ctrl_reg__16BIT_PERIOD_PERIOD_REG, CYREG_B0_UDB01_02_MSK .set SS_Async_ctrl_reg__1__MASK, 0x02 .set SS_Async_ctrl_reg__1__POS, 1 -.set SS_Async_ctrl_reg__CONTROL_AUX_CTL_REG, CYREG_B0_UDB05_ACTL -.set SS_Async_ctrl_reg__CONTROL_REG, CYREG_B0_UDB05_CTL -.set SS_Async_ctrl_reg__CONTROL_ST_REG, CYREG_B0_UDB05_ST_CTL -.set SS_Async_ctrl_reg__COUNT_REG, CYREG_B0_UDB05_CTL -.set SS_Async_ctrl_reg__COUNT_ST_REG, CYREG_B0_UDB05_ST_CTL -.set SS_Async_ctrl_reg__MASK, 0x03 -.set SS_Async_ctrl_reg__MASK_CTL_AUX_CTL_REG, CYREG_B0_UDB05_MSK_ACTL -.set SS_Async_ctrl_reg__PERIOD_REG, CYREG_B0_UDB05_MSK -.set SS_Async_ctrl_reg__PER_CTL_AUX_CTL_REG, CYREG_B0_UDB05_MSK_ACTL +.set SS_Async_ctrl_reg__2__MASK, 0x04 +.set SS_Async_ctrl_reg__2__POS, 2 +.set SS_Async_ctrl_reg__CONTROL_AUX_CTL_REG, CYREG_B0_UDB01_ACTL +.set SS_Async_ctrl_reg__CONTROL_REG, CYREG_B0_UDB01_CTL +.set SS_Async_ctrl_reg__CONTROL_ST_REG, CYREG_B0_UDB01_ST_CTL +.set SS_Async_ctrl_reg__COUNT_REG, CYREG_B0_UDB01_CTL +.set SS_Async_ctrl_reg__COUNT_ST_REG, CYREG_B0_UDB01_ST_CTL +.set SS_Async_ctrl_reg__MASK, 0x07 +.set SS_Async_ctrl_reg__MASK_CTL_AUX_CTL_REG, CYREG_B0_UDB01_MSK_ACTL +.set SS_Async_ctrl_reg__PERIOD_REG, CYREG_B0_UDB01_MSK +.set SS_Async_ctrl_reg__PER_CTL_AUX_CTL_REG, CYREG_B0_UDB01_MSK_ACTL /* Miscellaneous */ /* -- WARNING: define names containing LEOPARD or PANTHER are deprecated and will be removed in a future release */ @@ -494,16 +602,17 @@ .set CYDEV_CONFIG_FASTBOOT_ENABLED, 0 .set CYDEV_CHIP_REV_PANTHER_PRODUCTION, 1 .set CYDEV_CHIP_REVISION_5A_PRODUCTION, 1 -.set CYDEV_CHIP_MEMBER_5A, 2 +.set CYDEV_CHIP_MEMBER_5A, 3 .set CYDEV_CHIP_FAMILY_PSOC5, 3 -.set CYDEV_CHIP_DIE_PANTHER, 2 +.set CYDEV_CHIP_DIE_PANTHER, 3 .set CYDEV_CHIP_DIE_EXPECT, CYDEV_CHIP_DIE_PANTHER .set BCLK__BUS_CLK__HZ, 24000000 .set BCLK__BUS_CLK__KHZ, 24000 .set BCLK__BUS_CLK__MHZ, 24 .set CYDEV_CHIP_DIE_ACTUAL, CYDEV_CHIP_DIE_EXPECT .set CYDEV_CHIP_DIE_LEOPARD, 1 -.set CYDEV_CHIP_DIE_PSOC5LP, 3 +.set CYDEV_CHIP_DIE_PSOC4A, 2 +.set CYDEV_CHIP_DIE_PSOC5LP, 4 .set CYDEV_CHIP_DIE_UNKNOWN, 0 .set CYDEV_CHIP_FAMILY_PSOC3, 1 .set CYDEV_CHIP_FAMILY_PSOC4, 2 @@ -511,13 +620,16 @@ .set CYDEV_CHIP_FAMILY_USED, CYDEV_CHIP_FAMILY_PSOC5 .set CYDEV_CHIP_JTAG_ID, 0x0E13C069 .set CYDEV_CHIP_MEMBER_3A, 1 -.set CYDEV_CHIP_MEMBER_5B, 3 +.set CYDEV_CHIP_MEMBER_4A, 2 +.set CYDEV_CHIP_MEMBER_5B, 4 .set CYDEV_CHIP_MEMBER_UNKNOWN, 0 .set CYDEV_CHIP_MEMBER_USED, CYDEV_CHIP_MEMBER_5A .set CYDEV_CHIP_REVISION_3A_ES1, 0 .set CYDEV_CHIP_REVISION_3A_ES2, 1 .set CYDEV_CHIP_REVISION_3A_ES3, 3 .set CYDEV_CHIP_REVISION_3A_PRODUCTION, 3 +.set CYDEV_CHIP_REVISION_4A_ES0, 17 +.set CYDEV_CHIP_REVISION_4A_PRODUCTION, 17 .set CYDEV_CHIP_REVISION_5A_ES0, 0 .set CYDEV_CHIP_REVISION_5A_ES1, 1 .set CYDEV_CHIP_REVISION_5B_ES0, 0 @@ -530,6 +642,8 @@ .set CYDEV_CHIP_REV_LEOPARD_PRODUCTION, 3 .set CYDEV_CHIP_REV_PANTHER_ES0, 0 .set CYDEV_CHIP_REV_PANTHER_ES1, 1 +.set CYDEV_CHIP_REV_PSOC4A_ES0, 17 +.set CYDEV_CHIP_REV_PSOC4A_PRODUCTION, 17 .set CYDEV_CHIP_REV_PSOC5LP_ES0, 0 .set CYDEV_CHIP_REV_PSOC5LP_PRODUCTION, 0 .set CYDEV_CONFIGURATION_COMPRESSED, 0 diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyfitterrv.inc b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyfitterrv.inc index fbcacf6..11eee07 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyfitterrv.inc +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyfitterrv.inc @@ -3,6 +3,80 @@ INCLUDED_CYFITTERRV_INC EQU 1 GET cydevicerv.inc GET cydevicerv_trm.inc +; Timer_1_TimerUDB +Timer_1_TimerUDB_nrstSts_stsreg__0__MASK EQU 0x01 +Timer_1_TimerUDB_nrstSts_stsreg__0__POS EQU 0 +Timer_1_TimerUDB_nrstSts_stsreg__16BIT_STATUS_AUX_CTL_REG EQU CYREG_B1_UDB04_05_ACTL +Timer_1_TimerUDB_nrstSts_stsreg__16BIT_STATUS_REG EQU CYREG_B1_UDB04_05_ST +Timer_1_TimerUDB_nrstSts_stsreg__2__MASK EQU 0x04 +Timer_1_TimerUDB_nrstSts_stsreg__2__POS EQU 2 +Timer_1_TimerUDB_nrstSts_stsreg__3__MASK EQU 0x08 +Timer_1_TimerUDB_nrstSts_stsreg__3__POS EQU 3 +Timer_1_TimerUDB_nrstSts_stsreg__MASK EQU 0x0D +Timer_1_TimerUDB_nrstSts_stsreg__MASK_REG EQU CYREG_B1_UDB04_MSK +Timer_1_TimerUDB_nrstSts_stsreg__MASK_ST_AUX_CTL_REG EQU CYREG_B1_UDB04_MSK_ACTL +Timer_1_TimerUDB_nrstSts_stsreg__PER_ST_AUX_CTL_REG EQU CYREG_B1_UDB04_MSK_ACTL +Timer_1_TimerUDB_nrstSts_stsreg__STATUS_AUX_CTL_REG EQU CYREG_B1_UDB04_ACTL +Timer_1_TimerUDB_nrstSts_stsreg__STATUS_CNT_REG EQU CYREG_B1_UDB04_ST_CTL +Timer_1_TimerUDB_nrstSts_stsreg__STATUS_CONTROL_REG EQU CYREG_B1_UDB04_ST_CTL +Timer_1_TimerUDB_nrstSts_stsreg__STATUS_REG EQU CYREG_B1_UDB04_ST +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_CONTROL_AUX_CTL_REG EQU CYREG_B1_UDB04_05_ACTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_CONTROL_CONTROL_REG EQU CYREG_B1_UDB04_05_CTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_CONTROL_COUNT_REG EQU CYREG_B1_UDB04_05_CTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_COUNT_CONTROL_REG EQU CYREG_B1_UDB04_05_CTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_COUNT_COUNT_REG EQU CYREG_B1_UDB04_05_CTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_MASK_MASK_REG EQU CYREG_B1_UDB04_05_MSK +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_MASK_PERIOD_REG EQU CYREG_B1_UDB04_05_MSK +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_PERIOD_MASK_REG EQU CYREG_B1_UDB04_05_MSK +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__16BIT_PERIOD_PERIOD_REG EQU CYREG_B1_UDB04_05_MSK +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__7__MASK EQU 0x80 +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__7__POS EQU 7 +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__CONTROL_AUX_CTL_REG EQU CYREG_B1_UDB04_ACTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__CONTROL_REG EQU CYREG_B1_UDB04_CTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__CONTROL_ST_REG EQU CYREG_B1_UDB04_ST_CTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__COUNT_REG EQU CYREG_B1_UDB04_CTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__COUNT_ST_REG EQU CYREG_B1_UDB04_ST_CTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__MASK EQU 0x80 +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__MASK_CTL_AUX_CTL_REG EQU CYREG_B1_UDB04_MSK_ACTL +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__PERIOD_REG EQU CYREG_B1_UDB04_MSK +Timer_1_TimerUDB_sCTRLReg_AsyncCtl_ctrlreg__PER_CTL_AUX_CTL_REG EQU CYREG_B1_UDB04_MSK_ACTL +Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_A0_REG EQU CYREG_B1_UDB04_05_A0 +Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_A1_REG EQU CYREG_B1_UDB04_05_A1 +Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_D0_REG EQU CYREG_B1_UDB04_05_D0 +Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_D1_REG EQU CYREG_B1_UDB04_05_D1 +Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_DP_AUX_CTL_REG EQU CYREG_B1_UDB04_05_ACTL +Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_F0_REG EQU CYREG_B1_UDB04_05_F0 +Timer_1_TimerUDB_sT16_timerdp_u0__16BIT_F1_REG EQU CYREG_B1_UDB04_05_F1 +Timer_1_TimerUDB_sT16_timerdp_u0__A0_A1_REG EQU CYREG_B1_UDB04_A0_A1 +Timer_1_TimerUDB_sT16_timerdp_u0__A0_REG EQU CYREG_B1_UDB04_A0 +Timer_1_TimerUDB_sT16_timerdp_u0__A1_REG EQU CYREG_B1_UDB04_A1 +Timer_1_TimerUDB_sT16_timerdp_u0__D0_D1_REG EQU CYREG_B1_UDB04_D0_D1 +Timer_1_TimerUDB_sT16_timerdp_u0__D0_REG EQU CYREG_B1_UDB04_D0 +Timer_1_TimerUDB_sT16_timerdp_u0__D1_REG EQU CYREG_B1_UDB04_D1 +Timer_1_TimerUDB_sT16_timerdp_u0__DP_AUX_CTL_REG EQU CYREG_B1_UDB04_ACTL +Timer_1_TimerUDB_sT16_timerdp_u0__F0_F1_REG EQU CYREG_B1_UDB04_F0_F1 +Timer_1_TimerUDB_sT16_timerdp_u0__F0_REG EQU CYREG_B1_UDB04_F0 +Timer_1_TimerUDB_sT16_timerdp_u0__F1_REG EQU CYREG_B1_UDB04_F1 +Timer_1_TimerUDB_sT16_timerdp_u0__MSK_DP_AUX_CTL_REG EQU CYREG_B1_UDB04_MSK_ACTL +Timer_1_TimerUDB_sT16_timerdp_u0__PER_DP_AUX_CTL_REG EQU CYREG_B1_UDB04_MSK_ACTL +Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_A0_REG EQU CYREG_B1_UDB05_06_A0 +Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_A1_REG EQU CYREG_B1_UDB05_06_A1 +Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_D0_REG EQU CYREG_B1_UDB05_06_D0 +Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_D1_REG EQU CYREG_B1_UDB05_06_D1 +Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_DP_AUX_CTL_REG EQU CYREG_B1_UDB05_06_ACTL +Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_F0_REG EQU CYREG_B1_UDB05_06_F0 +Timer_1_TimerUDB_sT16_timerdp_u1__16BIT_F1_REG EQU CYREG_B1_UDB05_06_F1 +Timer_1_TimerUDB_sT16_timerdp_u1__A0_A1_REG EQU CYREG_B1_UDB05_A0_A1 +Timer_1_TimerUDB_sT16_timerdp_u1__A0_REG EQU CYREG_B1_UDB05_A0 +Timer_1_TimerUDB_sT16_timerdp_u1__A1_REG EQU CYREG_B1_UDB05_A1 +Timer_1_TimerUDB_sT16_timerdp_u1__D0_D1_REG EQU CYREG_B1_UDB05_D0_D1 +Timer_1_TimerUDB_sT16_timerdp_u1__D0_REG EQU CYREG_B1_UDB05_D0 +Timer_1_TimerUDB_sT16_timerdp_u1__D1_REG EQU CYREG_B1_UDB05_D1 +Timer_1_TimerUDB_sT16_timerdp_u1__DP_AUX_CTL_REG EQU CYREG_B1_UDB05_ACTL +Timer_1_TimerUDB_sT16_timerdp_u1__F0_F1_REG EQU CYREG_B1_UDB05_F0_F1 +Timer_1_TimerUDB_sT16_timerdp_u1__F0_REG EQU CYREG_B1_UDB05_F0 +Timer_1_TimerUDB_sT16_timerdp_u1__F1_REG EQU CYREG_B1_UDB05_F1 + ; SPIM_IntClock SPIM_IntClock__CFG0 EQU CYREG_CLKDIST_DCFG0_CFG0 SPIM_IntClock__CFG1 EQU CYREG_CLKDIST_DCFG0_CFG1 @@ -15,27 +89,27 @@ SPIM_IntClock__PM_STBY_CFG EQU CYREG_PM_STBY_CFG2 SPIM_IntClock__PM_STBY_MSK EQU 0x01 ; UART_1_BUART -UART_1_BUART_sTX_TxShifter_u0__16BIT_A0_REG EQU CYREG_B0_UDB01_02_A0 -UART_1_BUART_sTX_TxShifter_u0__16BIT_A1_REG EQU CYREG_B0_UDB01_02_A1 -UART_1_BUART_sTX_TxShifter_u0__16BIT_D0_REG EQU CYREG_B0_UDB01_02_D0 -UART_1_BUART_sTX_TxShifter_u0__16BIT_D1_REG EQU CYREG_B0_UDB01_02_D1 -UART_1_BUART_sTX_TxShifter_u0__16BIT_DP_AUX_CTL_REG EQU CYREG_B0_UDB01_02_ACTL -UART_1_BUART_sTX_TxShifter_u0__16BIT_F0_REG EQU CYREG_B0_UDB01_02_F0 -UART_1_BUART_sTX_TxShifter_u0__16BIT_F1_REG EQU CYREG_B0_UDB01_02_F1 -UART_1_BUART_sTX_TxShifter_u0__A0_A1_REG EQU CYREG_B0_UDB01_A0_A1 -UART_1_BUART_sTX_TxShifter_u0__A0_REG EQU CYREG_B0_UDB01_A0 -UART_1_BUART_sTX_TxShifter_u0__A1_REG EQU CYREG_B0_UDB01_A1 -UART_1_BUART_sTX_TxShifter_u0__D0_D1_REG EQU CYREG_B0_UDB01_D0_D1 -UART_1_BUART_sTX_TxShifter_u0__D0_REG EQU CYREG_B0_UDB01_D0 -UART_1_BUART_sTX_TxShifter_u0__D1_REG EQU CYREG_B0_UDB01_D1 -UART_1_BUART_sTX_TxShifter_u0__DP_AUX_CTL_REG EQU CYREG_B0_UDB01_ACTL -UART_1_BUART_sTX_TxShifter_u0__F0_F1_REG EQU CYREG_B0_UDB01_F0_F1 -UART_1_BUART_sTX_TxShifter_u0__F0_REG EQU CYREG_B0_UDB01_F0 -UART_1_BUART_sTX_TxShifter_u0__F1_REG EQU CYREG_B0_UDB01_F1 +UART_1_BUART_sTX_TxShifter_u0__16BIT_A0_REG EQU CYREG_B0_UDB04_05_A0 +UART_1_BUART_sTX_TxShifter_u0__16BIT_A1_REG EQU CYREG_B0_UDB04_05_A1 +UART_1_BUART_sTX_TxShifter_u0__16BIT_D0_REG EQU CYREG_B0_UDB04_05_D0 +UART_1_BUART_sTX_TxShifter_u0__16BIT_D1_REG EQU CYREG_B0_UDB04_05_D1 +UART_1_BUART_sTX_TxShifter_u0__16BIT_DP_AUX_CTL_REG EQU CYREG_B0_UDB04_05_ACTL +UART_1_BUART_sTX_TxShifter_u0__16BIT_F0_REG EQU CYREG_B0_UDB04_05_F0 +UART_1_BUART_sTX_TxShifter_u0__16BIT_F1_REG EQU CYREG_B0_UDB04_05_F1 +UART_1_BUART_sTX_TxShifter_u0__A0_A1_REG EQU CYREG_B0_UDB04_A0_A1 +UART_1_BUART_sTX_TxShifter_u0__A0_REG EQU CYREG_B0_UDB04_A0 +UART_1_BUART_sTX_TxShifter_u0__A1_REG EQU CYREG_B0_UDB04_A1 +UART_1_BUART_sTX_TxShifter_u0__D0_D1_REG EQU CYREG_B0_UDB04_D0_D1 +UART_1_BUART_sTX_TxShifter_u0__D0_REG EQU CYREG_B0_UDB04_D0 +UART_1_BUART_sTX_TxShifter_u0__D1_REG EQU CYREG_B0_UDB04_D1 +UART_1_BUART_sTX_TxShifter_u0__DP_AUX_CTL_REG EQU CYREG_B0_UDB04_ACTL +UART_1_BUART_sTX_TxShifter_u0__F0_F1_REG EQU CYREG_B0_UDB04_F0_F1 +UART_1_BUART_sTX_TxShifter_u0__F0_REG EQU CYREG_B0_UDB04_F0 +UART_1_BUART_sTX_TxShifter_u0__F1_REG EQU CYREG_B0_UDB04_F1 UART_1_BUART_sTX_TxSts__0__MASK EQU 0x01 UART_1_BUART_sTX_TxSts__0__POS EQU 0 -UART_1_BUART_sTX_TxSts__16BIT_STATUS_AUX_CTL_REG EQU CYREG_B0_UDB02_03_ACTL -UART_1_BUART_sTX_TxSts__16BIT_STATUS_REG EQU CYREG_B0_UDB02_03_ST +UART_1_BUART_sTX_TxSts__16BIT_STATUS_AUX_CTL_REG EQU CYREG_B0_UDB04_05_ACTL +UART_1_BUART_sTX_TxSts__16BIT_STATUS_REG EQU CYREG_B0_UDB04_05_ST UART_1_BUART_sTX_TxSts__1__MASK EQU 0x02 UART_1_BUART_sTX_TxSts__1__POS EQU 1 UART_1_BUART_sTX_TxSts__2__MASK EQU 0x04 @@ -43,26 +117,26 @@ UART_1_BUART_sTX_TxSts__2__POS EQU 2 UART_1_BUART_sTX_TxSts__3__MASK EQU 0x08 UART_1_BUART_sTX_TxSts__3__POS EQU 3 UART_1_BUART_sTX_TxSts__MASK EQU 0x0F -UART_1_BUART_sTX_TxSts__MASK_REG EQU CYREG_B0_UDB02_MSK -UART_1_BUART_sTX_TxSts__STATUS_AUX_CTL_REG EQU CYREG_B0_UDB02_ACTL -UART_1_BUART_sTX_TxSts__STATUS_REG EQU CYREG_B0_UDB02_ST -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A0_REG EQU CYREG_B0_UDB00_01_A0 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A1_REG EQU CYREG_B0_UDB00_01_A1 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D0_REG EQU CYREG_B0_UDB00_01_D0 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D1_REG EQU CYREG_B0_UDB00_01_D1 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_DP_AUX_CTL_REG EQU CYREG_B0_UDB00_01_ACTL -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F0_REG EQU CYREG_B0_UDB00_01_F0 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F1_REG EQU CYREG_B0_UDB00_01_F1 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_A1_REG EQU CYREG_B0_UDB00_A0_A1 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_REG EQU CYREG_B0_UDB00_A0 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A1_REG EQU CYREG_B0_UDB00_A1 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_D1_REG EQU CYREG_B0_UDB00_D0_D1 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_REG EQU CYREG_B0_UDB00_D0 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D1_REG EQU CYREG_B0_UDB00_D1 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__DP_AUX_CTL_REG EQU CYREG_B0_UDB00_ACTL -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_F1_REG EQU CYREG_B0_UDB00_F0_F1 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_REG EQU CYREG_B0_UDB00_F0 -UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F1_REG EQU CYREG_B0_UDB00_F1 +UART_1_BUART_sTX_TxSts__MASK_REG EQU CYREG_B0_UDB04_MSK +UART_1_BUART_sTX_TxSts__STATUS_AUX_CTL_REG EQU CYREG_B0_UDB04_ACTL +UART_1_BUART_sTX_TxSts__STATUS_REG EQU CYREG_B0_UDB04_ST +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A0_REG EQU CYREG_B0_UDB05_06_A0 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_A1_REG EQU CYREG_B0_UDB05_06_A1 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D0_REG EQU CYREG_B0_UDB05_06_D0 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_D1_REG EQU CYREG_B0_UDB05_06_D1 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_DP_AUX_CTL_REG EQU CYREG_B0_UDB05_06_ACTL +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F0_REG EQU CYREG_B0_UDB05_06_F0 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__16BIT_F1_REG EQU CYREG_B0_UDB05_06_F1 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_A1_REG EQU CYREG_B0_UDB05_A0_A1 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A0_REG EQU CYREG_B0_UDB05_A0 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__A1_REG EQU CYREG_B0_UDB05_A1 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_D1_REG EQU CYREG_B0_UDB05_D0_D1 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D0_REG EQU CYREG_B0_UDB05_D0 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__D1_REG EQU CYREG_B0_UDB05_D1 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__DP_AUX_CTL_REG EQU CYREG_B0_UDB05_ACTL +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_F1_REG EQU CYREG_B0_UDB05_F0_F1 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F0_REG EQU CYREG_B0_UDB05_F0 +UART_1_BUART_sTX_sCLOCK_TxBitClkGen__F1_REG EQU CYREG_B0_UDB05_F1 ; LCD_LCDPort LCD_LCDPort__0__MASK EQU 0x01 @@ -243,8 +317,8 @@ SPIM_BSPIM_BitCounter__COUNT_ST_REG EQU CYREG_B0_UDB03_ST_CTL SPIM_BSPIM_BitCounter__MASK_CTL_AUX_CTL_REG EQU CYREG_B0_UDB03_MSK_ACTL SPIM_BSPIM_BitCounter__PERIOD_REG EQU CYREG_B0_UDB03_MSK SPIM_BSPIM_BitCounter__PER_CTL_AUX_CTL_REG EQU CYREG_B0_UDB03_MSK_ACTL -SPIM_BSPIM_RxStsReg__16BIT_STATUS_AUX_CTL_REG EQU CYREG_B0_UDB00_01_ACTL -SPIM_BSPIM_RxStsReg__16BIT_STATUS_REG EQU CYREG_B0_UDB00_01_ST +SPIM_BSPIM_RxStsReg__16BIT_STATUS_AUX_CTL_REG EQU CYREG_B0_UDB02_03_ACTL +SPIM_BSPIM_RxStsReg__16BIT_STATUS_REG EQU CYREG_B0_UDB02_03_ST SPIM_BSPIM_RxStsReg__4__MASK EQU 0x10 SPIM_BSPIM_RxStsReg__4__POS EQU 4 SPIM_BSPIM_RxStsReg__5__MASK EQU 0x20 @@ -252,13 +326,13 @@ SPIM_BSPIM_RxStsReg__5__POS EQU 5 SPIM_BSPIM_RxStsReg__6__MASK EQU 0x40 SPIM_BSPIM_RxStsReg__6__POS EQU 6 SPIM_BSPIM_RxStsReg__MASK EQU 0x70 -SPIM_BSPIM_RxStsReg__MASK_REG EQU CYREG_B0_UDB00_MSK -SPIM_BSPIM_RxStsReg__STATUS_AUX_CTL_REG EQU CYREG_B0_UDB00_ACTL -SPIM_BSPIM_RxStsReg__STATUS_REG EQU CYREG_B0_UDB00_ST +SPIM_BSPIM_RxStsReg__MASK_REG EQU CYREG_B0_UDB02_MSK +SPIM_BSPIM_RxStsReg__STATUS_AUX_CTL_REG EQU CYREG_B0_UDB02_ACTL +SPIM_BSPIM_RxStsReg__STATUS_REG EQU CYREG_B0_UDB02_ST SPIM_BSPIM_TxStsReg__0__MASK EQU 0x01 SPIM_BSPIM_TxStsReg__0__POS EQU 0 -SPIM_BSPIM_TxStsReg__16BIT_STATUS_AUX_CTL_REG EQU CYREG_B0_UDB04_05_ACTL -SPIM_BSPIM_TxStsReg__16BIT_STATUS_REG EQU CYREG_B0_UDB04_05_ST +SPIM_BSPIM_TxStsReg__16BIT_STATUS_AUX_CTL_REG EQU CYREG_B0_UDB00_01_ACTL +SPIM_BSPIM_TxStsReg__16BIT_STATUS_REG EQU CYREG_B0_UDB00_01_ST SPIM_BSPIM_TxStsReg__1__MASK EQU 0x02 SPIM_BSPIM_TxStsReg__1__POS EQU 1 SPIM_BSPIM_TxStsReg__2__MASK EQU 0x04 @@ -268,9 +342,9 @@ SPIM_BSPIM_TxStsReg__3__POS EQU 3 SPIM_BSPIM_TxStsReg__4__MASK EQU 0x10 SPIM_BSPIM_TxStsReg__4__POS EQU 4 SPIM_BSPIM_TxStsReg__MASK EQU 0x1F -SPIM_BSPIM_TxStsReg__MASK_REG EQU CYREG_B0_UDB04_MSK -SPIM_BSPIM_TxStsReg__STATUS_AUX_CTL_REG EQU CYREG_B0_UDB04_ACTL -SPIM_BSPIM_TxStsReg__STATUS_REG EQU CYREG_B0_UDB04_ST +SPIM_BSPIM_TxStsReg__MASK_REG EQU CYREG_B0_UDB00_MSK +SPIM_BSPIM_TxStsReg__STATUS_AUX_CTL_REG EQU CYREG_B0_UDB00_ACTL +SPIM_BSPIM_TxStsReg__STATUS_REG EQU CYREG_B0_UDB00_ST SPIM_BSPIM_sR8_Dp_u0__16BIT_A0_REG EQU CYREG_B0_UDB03_04_A0 SPIM_BSPIM_sR8_Dp_u0__16BIT_A1_REG EQU CYREG_B0_UDB03_04_A1 SPIM_BSPIM_sR8_Dp_u0__16BIT_D0_REG EQU CYREG_B0_UDB03_04_D0 @@ -430,6 +504,38 @@ Pin_4__PS EQU CYREG_PRT3_PS Pin_4__SHIFT EQU 3 Pin_4__SLW EQU CYREG_PRT3_SLW +; Pin_5 +Pin_5__0__MASK EQU 0x10 +Pin_5__0__PC EQU CYREG_PRT3_PC4 +Pin_5__0__PORT EQU 3 +Pin_5__0__SHIFT EQU 4 +Pin_5__AG EQU CYREG_PRT3_AG +Pin_5__AMUX EQU CYREG_PRT3_AMUX +Pin_5__BIE EQU CYREG_PRT3_BIE +Pin_5__BIT_MASK EQU CYREG_PRT3_BIT_MASK +Pin_5__BYP EQU CYREG_PRT3_BYP +Pin_5__CTL EQU CYREG_PRT3_CTL +Pin_5__DM0 EQU CYREG_PRT3_DM0 +Pin_5__DM1 EQU CYREG_PRT3_DM1 +Pin_5__DM2 EQU CYREG_PRT3_DM2 +Pin_5__DR EQU CYREG_PRT3_DR +Pin_5__INP_DIS EQU CYREG_PRT3_INP_DIS +Pin_5__LCD_COM_SEG EQU CYREG_PRT3_LCD_COM_SEG +Pin_5__LCD_EN EQU CYREG_PRT3_LCD_EN +Pin_5__MASK EQU 0x10 +Pin_5__PORT EQU 3 +Pin_5__PRT EQU CYREG_PRT3_PRT +Pin_5__PRTDSI__CAPS_SEL EQU CYREG_PRT3_CAPS_SEL +Pin_5__PRTDSI__DBL_SYNC_IN EQU CYREG_PRT3_DBL_SYNC_IN +Pin_5__PRTDSI__OE_SEL0 EQU CYREG_PRT3_OE_SEL0 +Pin_5__PRTDSI__OE_SEL1 EQU CYREG_PRT3_OE_SEL1 +Pin_5__PRTDSI__OUT_SEL0 EQU CYREG_PRT3_OUT_SEL0 +Pin_5__PRTDSI__OUT_SEL1 EQU CYREG_PRT3_OUT_SEL1 +Pin_5__PRTDSI__SYNC_OUT EQU CYREG_PRT3_SYNC_OUT +Pin_5__PS EQU CYREG_PRT3_PS +Pin_5__SHIFT EQU 4 +Pin_5__SLW EQU CYREG_PRT3_SLW + ; Tx_1 Tx_1__0__MASK EQU 0x80 Tx_1__0__PC EQU CYREG_PRT3_PC7 @@ -465,26 +571,28 @@ Tx_1__SLW EQU CYREG_PRT3_SLW ; SS SS_Async_ctrl_reg__0__MASK EQU 0x01 SS_Async_ctrl_reg__0__POS EQU 0 -SS_Async_ctrl_reg__16BIT_CONTROL_AUX_CTL_REG EQU CYREG_B0_UDB05_06_ACTL -SS_Async_ctrl_reg__16BIT_CONTROL_CONTROL_REG EQU CYREG_B0_UDB05_06_CTL -SS_Async_ctrl_reg__16BIT_CONTROL_COUNT_REG EQU CYREG_B0_UDB05_06_CTL -SS_Async_ctrl_reg__16BIT_COUNT_CONTROL_REG EQU CYREG_B0_UDB05_06_CTL -SS_Async_ctrl_reg__16BIT_COUNT_COUNT_REG EQU CYREG_B0_UDB05_06_CTL -SS_Async_ctrl_reg__16BIT_MASK_MASK_REG EQU CYREG_B0_UDB05_06_MSK -SS_Async_ctrl_reg__16BIT_MASK_PERIOD_REG EQU CYREG_B0_UDB05_06_MSK -SS_Async_ctrl_reg__16BIT_PERIOD_MASK_REG EQU CYREG_B0_UDB05_06_MSK -SS_Async_ctrl_reg__16BIT_PERIOD_PERIOD_REG EQU CYREG_B0_UDB05_06_MSK +SS_Async_ctrl_reg__16BIT_CONTROL_AUX_CTL_REG EQU CYREG_B0_UDB01_02_ACTL +SS_Async_ctrl_reg__16BIT_CONTROL_CONTROL_REG EQU CYREG_B0_UDB01_02_CTL +SS_Async_ctrl_reg__16BIT_CONTROL_COUNT_REG EQU CYREG_B0_UDB01_02_CTL +SS_Async_ctrl_reg__16BIT_COUNT_CONTROL_REG EQU CYREG_B0_UDB01_02_CTL +SS_Async_ctrl_reg__16BIT_COUNT_COUNT_REG EQU CYREG_B0_UDB01_02_CTL +SS_Async_ctrl_reg__16BIT_MASK_MASK_REG EQU CYREG_B0_UDB01_02_MSK +SS_Async_ctrl_reg__16BIT_MASK_PERIOD_REG EQU CYREG_B0_UDB01_02_MSK +SS_Async_ctrl_reg__16BIT_PERIOD_MASK_REG EQU CYREG_B0_UDB01_02_MSK +SS_Async_ctrl_reg__16BIT_PERIOD_PERIOD_REG EQU CYREG_B0_UDB01_02_MSK SS_Async_ctrl_reg__1__MASK EQU 0x02 SS_Async_ctrl_reg__1__POS EQU 1 -SS_Async_ctrl_reg__CONTROL_AUX_CTL_REG EQU CYREG_B0_UDB05_ACTL -SS_Async_ctrl_reg__CONTROL_REG EQU CYREG_B0_UDB05_CTL -SS_Async_ctrl_reg__CONTROL_ST_REG EQU CYREG_B0_UDB05_ST_CTL -SS_Async_ctrl_reg__COUNT_REG EQU CYREG_B0_UDB05_CTL -SS_Async_ctrl_reg__COUNT_ST_REG EQU CYREG_B0_UDB05_ST_CTL -SS_Async_ctrl_reg__MASK EQU 0x03 -SS_Async_ctrl_reg__MASK_CTL_AUX_CTL_REG EQU CYREG_B0_UDB05_MSK_ACTL -SS_Async_ctrl_reg__PERIOD_REG EQU CYREG_B0_UDB05_MSK -SS_Async_ctrl_reg__PER_CTL_AUX_CTL_REG EQU CYREG_B0_UDB05_MSK_ACTL +SS_Async_ctrl_reg__2__MASK EQU 0x04 +SS_Async_ctrl_reg__2__POS EQU 2 +SS_Async_ctrl_reg__CONTROL_AUX_CTL_REG EQU CYREG_B0_UDB01_ACTL +SS_Async_ctrl_reg__CONTROL_REG EQU CYREG_B0_UDB01_CTL +SS_Async_ctrl_reg__CONTROL_ST_REG EQU CYREG_B0_UDB01_ST_CTL +SS_Async_ctrl_reg__COUNT_REG EQU CYREG_B0_UDB01_CTL +SS_Async_ctrl_reg__COUNT_ST_REG EQU CYREG_B0_UDB01_ST_CTL +SS_Async_ctrl_reg__MASK EQU 0x07 +SS_Async_ctrl_reg__MASK_CTL_AUX_CTL_REG EQU CYREG_B0_UDB01_MSK_ACTL +SS_Async_ctrl_reg__PERIOD_REG EQU CYREG_B0_UDB01_MSK +SS_Async_ctrl_reg__PER_CTL_AUX_CTL_REG EQU CYREG_B0_UDB01_MSK_ACTL ; Miscellaneous ; -- WARNING: define names containing LEOPARD or PANTHER are deprecated and will be removed in a future release @@ -494,16 +602,17 @@ CYDEV_CONFIGURATION_MODE_DMA EQU 2 CYDEV_CONFIG_FASTBOOT_ENABLED EQU 0 CYDEV_CHIP_REV_PANTHER_PRODUCTION EQU 1 CYDEV_CHIP_REVISION_5A_PRODUCTION EQU 1 -CYDEV_CHIP_MEMBER_5A EQU 2 +CYDEV_CHIP_MEMBER_5A EQU 3 CYDEV_CHIP_FAMILY_PSOC5 EQU 3 -CYDEV_CHIP_DIE_PANTHER EQU 2 +CYDEV_CHIP_DIE_PANTHER EQU 3 CYDEV_CHIP_DIE_EXPECT EQU CYDEV_CHIP_DIE_PANTHER BCLK__BUS_CLK__HZ EQU 24000000 BCLK__BUS_CLK__KHZ EQU 24000 BCLK__BUS_CLK__MHZ EQU 24 CYDEV_CHIP_DIE_ACTUAL EQU CYDEV_CHIP_DIE_EXPECT CYDEV_CHIP_DIE_LEOPARD EQU 1 -CYDEV_CHIP_DIE_PSOC5LP EQU 3 +CYDEV_CHIP_DIE_PSOC4A EQU 2 +CYDEV_CHIP_DIE_PSOC5LP EQU 4 CYDEV_CHIP_DIE_UNKNOWN EQU 0 CYDEV_CHIP_FAMILY_PSOC3 EQU 1 CYDEV_CHIP_FAMILY_PSOC4 EQU 2 @@ -511,13 +620,16 @@ CYDEV_CHIP_FAMILY_UNKNOWN EQU 0 CYDEV_CHIP_FAMILY_USED EQU CYDEV_CHIP_FAMILY_PSOC5 CYDEV_CHIP_JTAG_ID EQU 0x0E13C069 CYDEV_CHIP_MEMBER_3A EQU 1 -CYDEV_CHIP_MEMBER_5B EQU 3 +CYDEV_CHIP_MEMBER_4A EQU 2 +CYDEV_CHIP_MEMBER_5B EQU 4 CYDEV_CHIP_MEMBER_UNKNOWN EQU 0 CYDEV_CHIP_MEMBER_USED EQU CYDEV_CHIP_MEMBER_5A CYDEV_CHIP_REVISION_3A_ES1 EQU 0 CYDEV_CHIP_REVISION_3A_ES2 EQU 1 CYDEV_CHIP_REVISION_3A_ES3 EQU 3 CYDEV_CHIP_REVISION_3A_PRODUCTION EQU 3 +CYDEV_CHIP_REVISION_4A_ES0 EQU 17 +CYDEV_CHIP_REVISION_4A_PRODUCTION EQU 17 CYDEV_CHIP_REVISION_5A_ES0 EQU 0 CYDEV_CHIP_REVISION_5A_ES1 EQU 1 CYDEV_CHIP_REVISION_5B_ES0 EQU 0 @@ -530,6 +642,8 @@ CYDEV_CHIP_REV_LEOPARD_ES3 EQU 3 CYDEV_CHIP_REV_LEOPARD_PRODUCTION EQU 3 CYDEV_CHIP_REV_PANTHER_ES0 EQU 0 CYDEV_CHIP_REV_PANTHER_ES1 EQU 1 +CYDEV_CHIP_REV_PSOC4A_ES0 EQU 17 +CYDEV_CHIP_REV_PSOC4A_PRODUCTION EQU 17 CYDEV_CHIP_REV_PSOC5LP_ES0 EQU 0 CYDEV_CHIP_REV_PSOC5LP_PRODUCTION EQU 0 CYDEV_CONFIGURATION_COMPRESSED EQU 0 diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cypins.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cypins.h index fcb4129..ed01434 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cypins.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cypins.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: cypins.h -* Version 3.30 +* Version 3.40 * * Description: * This file contains the function prototypes and constants used for port/pin @@ -11,7 +11,7 @@ * System Reference Guide provided with PSoC Creator. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cytypes.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cytypes.h index 8fdb501..0187c1b 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cytypes.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cytypes.h @@ -1,6 +1,6 @@ /******************************************************************************* * FILENAME: cytypes.h -* Version 3.30 +* Version 3.40 * * Description: * CyTypes provides register access macros and approved types for use in @@ -17,7 +17,7 @@ * (i.e. a "uint8 *" shouldn't be passed to obtain a 16-bit register value) * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. @@ -83,7 +83,9 @@ typedef float float32; #if(!CY_PSOC3) - typedef double float64; + typedef double float64; + typedef long long int64; + typedef unsigned long long uint64; #endif /* (!CY_PSOC3) */ @@ -167,6 +169,8 @@ typedef char char8; #define CYSMALL small #define CYXDATA xdata #define XDATA xdata + + #define CY_NOINIT #else @@ -183,6 +187,13 @@ typedef char char8; #define CYSMALL #define CYXDATA #define XDATA + + #if defined(__ARMCC_VERSION) + #define CY_NOINIT __attribute__ ((section(".noinit"), zero_init)) + #elif defined (__GNUC__) + #define CY_NOINIT __attribute__ ((section(".noinit"))) + #endif /* (__ARMCC_VERSION) */ + #endif /* (CY_PSOC3) */ @@ -254,17 +265,17 @@ typedef volatile uint32 CYXDATA reg32; #define CY_SET_REG32(addr, value) cywrite32_nodpx((volatile void far *)(reg32 *)(addr), value) /* Access 8, 16, 24 and 32-bit registers, ABOVE THE FIRST 64K OF XDATA */ - #define CY_GET_XTND_REG8(addr) cyread8(addr) - #define CY_SET_XTND_REG8(addr, value) cywrite8(addr,value) + #define CY_GET_XTND_REG8(addr) cyread8((volatile void far *)(addr)) + #define CY_SET_XTND_REG8(addr, value) cywrite8((volatile void far *)(addr), value) - #define CY_GET_XTND_REG16(addr) cyread16(addr) - #define CY_SET_XTND_REG16(addr, value) cywrite16(addr,value) + #define CY_GET_XTND_REG16(addr) cyread16((volatile void far *)(addr)) + #define CY_SET_XTND_REG16(addr, value) cywrite16((volatile void far *)(addr), value) - #define CY_GET_XTND_REG24(addr) cyread24(addr) - #define CY_SET_XTND_REG24(addr, value) cywrite24(addr,value) + #define CY_GET_XTND_REG24(addr) cyread24((volatile void far *)(addr)) + #define CY_SET_XTND_REG24(addr, value) cywrite24((volatile void far *)(addr), value) - #define CY_GET_XTND_REG32(addr) cyread32(addr) - #define CY_SET_XTND_REG32(addr, value) cywrite32(addr,value) + #define CY_GET_XTND_REG32(addr) cyread32((volatile void far *)(addr)) + #define CY_SET_XTND_REG32(addr, value) cywrite32((volatile void far *)(addr), value) #else diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyutils.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyutils.c index b064c5e..784a00f 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyutils.c +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/cyutils.c @@ -1,12 +1,12 @@ /******************************************************************************* * FILENAME: cyutils.c -* Version 3.30 +* Version 3.40 * * Description: * CyUtils provides function to handle 24-bit value writes. * ******************************************************************************** -* Copyright 2008-2012, Cypress Semiconductor Corporation. All rights reserved. +* Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/elab_dependencies.txt b/PSOC5_SPI_LSM303D.cydsn/codegentemp/elab_dependencies.txt index a3df7e6..855d4b4 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/elab_dependencies.txt +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/elab_dependencies.txt @@ -1,121 +1,121 @@ -C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\TopDesign\TopDesign.cysch +C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\TopDesign\TopDesign.cysch C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.cysym C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.pdf C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.v -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cyprimitive -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cysym -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.pdf -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cystate -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80 -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\custom.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\Resource1.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\Resource1.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\aliases.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\pins.c -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\pins.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cyprimitive -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cysym -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.pdf -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cystate -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80 -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\custom.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\Resource1.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\Resource1.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\aliases.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\pins.c -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\pins.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cyprimitive -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cysym -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.pdf -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cystate -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80 -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\custom.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\Resource1.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\Resource1.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\aliases.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\pins.c -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\pins.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cyprimitive +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.pdf +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cystate +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90 +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\custom.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\aliases.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cyprimitive +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.pdf +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cystate +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90 +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\custom.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\aliases.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cyprimitive +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.pdf +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cystate +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90 +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\custom.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\aliases.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.h C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\SPI_Master_v2_40.cysch C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\SPI_Master_v2_40.cysym C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\SPI_Master_v2_40\SPI_Master_v2_40.pdf @@ -161,60 +161,60 @@ C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprim C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.cysym C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.pdf C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.v -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_80\CharLCD_v1_80.cysch -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_80\CharLCD_v1_80.cysym -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_80\CharLCD_v1_80.pdf -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_80\API\BarGraph.c -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_80\API\CharLCD.c -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_80\API\CharLCD.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_80\API\CharLCD_PM.c -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_80\API\CustChars.c -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_80\Custom\cyapicustomizer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_80\Custom\cycharlcdcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_80\Custom\cycharlcdcontrol.designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_80\Custom\cycustomcharacter.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_80\Custom\cycustomcharacter.designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_80\Custom\cycustomizer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_80\Custom\cycharlcdcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_80\Custom\cycustomcharacter.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cyprimitive -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cysym -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.pdf -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cystate -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80 -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\custom.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\Resource1.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\Resource1.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\aliases.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\pins.c -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\pins.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\CharLCD_v1_90.cysch +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\CharLCD_v1_90.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\CharLCD_v1_90.pdf +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\API\BarGraph.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\API\CharLCD.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\API\CharLCD.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\API\CharLCD_PM.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\API\CustChars.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\Custom\cyapicustomizer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\Custom\cycharlcdcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\Custom\cycharlcdcontrol.designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\Custom\cycustomcharacter.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\Custom\cycustomcharacter.designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\Custom\cycustomizer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\Custom\cycharlcdcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CharLCD_v1_90\Custom\cycustomcharacter.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cyprimitive +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.pdf +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cystate +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90 +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\custom.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\aliases.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.h C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\UART_v2_30.cysch C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\UART_v2_30.cysym C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\UART_v2_30\UART_v2_30.pdf @@ -249,44 +249,44 @@ C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprim C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\API\clk.c C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\API\clk.h C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\Custom\custom.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cyprimitive -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cysym -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.pdf -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cystate -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80 -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\custom.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\Resource1.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\Resource1.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\aliases.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\pins.c -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\pins.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cyprimitive +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.pdf +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cystate +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90 +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\custom.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\aliases.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.h C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.cysym C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.pdf C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.v @@ -310,158 +310,158 @@ C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprim C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\Custom\Resources.Designer.cs C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\Custom\cybitfieldcontrol.resx C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\CyControlReg_v1_70\Custom\Resources.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cyprimitive -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cysym -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.pdf -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cystate -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80 -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\custom.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\Resource1.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\Resource1.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\aliases.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\pins.c -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\pins.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cyprimitive -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cysym -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.pdf -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cystate -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80 -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\custom.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\Resource1.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\Resource1.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\aliases.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\pins.c -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\pins.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cyprimitive -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cysym -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.pdf -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cystate -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80 -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\custom.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\Resource1.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\Resource1.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\aliases.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\pins.c -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\pins.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cyprimitive -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cysym -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.pdf -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\cy_pins_v1_80.cystate -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80 -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\custom.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\Resource1.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.Designer.cs -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cygeneralcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyinputcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cymappingcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyoutputcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinaliasdialog.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cypinscontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyporcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cytypecontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\Resource1.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\Custom\cyclockingcontrol.resx -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\aliases.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\pins.c -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_80\PSoC5\API\pins.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cyprimitive +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.pdf +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cystate +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90 +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\custom.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\aliases.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cyprimitive +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.pdf +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cystate +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90 +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\custom.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\aliases.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cyprimitive +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.pdf +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cystate +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90 +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\custom.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\aliases.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cyprimitive +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.pdf +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cystate +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90 +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\custom.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\aliases.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.h C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.cysym C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.pdf C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.v @@ -482,25 +482,113 @@ C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprim C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.pdf C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.v C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\Custom\custom.cs -C:\Users\Tore\Desktop\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cydwr -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\cm3gcc.ld -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\Cm3RealView.scat -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\Cm3Start.c -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\core_cm3.c -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\core_cm3.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\core_cm3_psoc5.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\CyBootAsmGnu.s -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\CyBootAsmRv.s -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\CyDmac.c -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\CyDmac.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\CyFlash.c -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\CyFlash.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\CyLib.c -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\CyLib.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\cypins.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\cyPm.c -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\cyPm.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\CySpc.c -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\CySpc.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\cytypes.h -C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_30\PSoC5\API\cyutils.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cyprimitive +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.pdf +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\cy_pins_v1_90.cystate +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90 +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\custom.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cygeneralcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyinputcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cymappingcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyoutputcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinaliasdialog.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cypinscontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyporcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cytypecontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\Resource1.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\Custom\cyclockingcontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\aliases.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_pins_v1_90\PSoC5\API\pins.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.pdf +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\not_v1_0.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\not_v1_0\Custom\custom.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.pdf +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Timer_v2_50.cycdx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Timer_v2_50.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Timer_v2_50.pdf +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Timer_v2_50.cystate +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\API\Timer.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\API\Timer.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\API\Timer_PM.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Custom\cytimercontrol.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Custom\cytimercontrol.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Custom\CyTimerCustomizer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Custom\TimerParameters.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Custom\Resources.Designer.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Custom\cytimercontrol.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\Custom\Resources.resx +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50\PSoC5\Timer_v2_50.cysch +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\Timer_v2_50 +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.pdf +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\ZeroTerminal\ZeroTerminal.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.pdf +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\Custom\custom.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.pdf +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\Custom\custom.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_Timer_v2_50\B_Timer_v2_50.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\B_Timer_v2_50\B_Timer_v2_50.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\OneTerminal\OneTerminal.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\OneTerminal\OneTerminal.pdf +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\OneTerminal\OneTerminal.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.pdf +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\cy_virtualmux_v1_0.v +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_virtualmux_v1_0\Custom\custom.cs +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\cy_clock_v2_0.cyprimitive +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\cy_clock_v2_0.cysym +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\cy_clock_v2_0.pdf +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\cy_clock_v2_0.cystate +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\API\clk.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\API\clk.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cyprimitives\CyPrimitives.cylib\cy_clock_v2_0\Custom\custom.cs +C:\Users\SB\Dropbox\CentroPiaggio\LSM303D\LSM303D_SPI_PSOC5\PSOC5_SPI_LSM303D.cydsn\PSOC5_SPI_LSM303D.cydwr +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\cm3gcc.ld +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\Cm3RealView.scat +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\Cm3Start.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\core_cm3.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\core_cm3.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\core_cm3_psoc5.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\CyBootAsmGnu.s +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\CyBootAsmRv.s +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\CyDmac.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\CyDmac.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\CyFlash.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\CyFlash.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\CyLib.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\CyLib.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\cypins.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\cyPm.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\cyPm.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\CySpc.c +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\CySpc.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\cytypes.h +C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\cy_boot_v3_40\PSoC5\API\cyutils.c diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/generated_files.txt b/PSOC5_SPI_LSM303D.cydsn/codegentemp/generated_files.txt index 330ef5c..28581d5 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/generated_files.txt +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/generated_files.txt @@ -1,82 +1,88 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/lcpsoc3/index b/PSOC5_SPI_LSM303D.cydsn/codegentemp/lcpsoc3/index index e03dd3aa31a44361b3d273f17b68f0cae1e4d90e..c5c1de9dffafd458724a8ad7ba7df2b1c5514eaa 100644 GIT binary patch literal 1792 zcmZQzVPQZ3CI*=w5)8@@xXN9Cf&oA_2yBSYVK4x)S3Kh?XJE(zi|qi4IRM4#{&SXJ zy}hdhq&@`5j{#y1ARA=r8z375Kzw#Ei-BQX@QgB$_zoccW97-f3KR$Fg@Xrw>v*6X zMj);H?0_SP3sMt$WLF6@kOpBe0ICJiM}THcE%0El;WlF6_$k4#(H>&%ZXo^mIYd9Q ldXTvwd#`}pH`4vj3JMJv7=iH*^ZF<~8UiCR1V(uN2LKpW)|~(V literal 1792 zcmZQzVPQZ3CI*=w5)8@@ippJpf&oA_2t=f1GZ+BbE1ngVGcaU=#S(yG4nVQG|ApmO zZyzcHsSg42V}O_g$Of7E2FL~h5T6~)VqjPoTwMwh-vPvbtUMW5f#M*&aPZ)79S@Yl z2&CuRO}hi)g4Bc_IaJ0Bq(K-AfNDYX5ujO93p^NXxMwhM{FGqWXb&-WH;|6Ehv-LE k4>A{I?-h{yM!Nr5L7@QyBQXA9ULU1LLtrF^zzEO(08;7LfdBvi diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_miso_pin.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_miso_pin.c index 29341e2..57a4726 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_miso_pin.c +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_miso_pin.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: m_miso_pin.c -* Version 1.80 +* Version 1.90 * * Description: * This file contains API to enable firmware control of a Pins component. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_miso_pin.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_miso_pin.h index 273fac5..1b4b352 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_miso_pin.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_miso_pin.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: m_miso_pin.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines @@ -25,7 +25,7 @@ /* Check to see if required defines such as CY_PSOC5A are available */ /* They are defined starting with cy_boot v3.0 */ #if !defined (CY_PSOC5A) - #error Component cy_pins_v1_80 requires cy_boot v3.0 or later + #error Component cy_pins_v1_90 requires cy_boot v3.0 or later #endif /* (CY_PSOC5A) */ /* APIs are not generated for P15[7:6] */ diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_miso_pin_aliases.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_miso_pin_aliases.h index a2d4f29..c6c88c2 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_miso_pin_aliases.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_miso_pin_aliases.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: m_miso_pin.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_mosi_pin.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_mosi_pin.c index 775ddf9..6eee973 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_mosi_pin.c +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_mosi_pin.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: m_mosi_pin.c -* Version 1.80 +* Version 1.90 * * Description: * This file contains API to enable firmware control of a Pins component. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_mosi_pin.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_mosi_pin.h index 331acd5..7af1137 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_mosi_pin.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_mosi_pin.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: m_mosi_pin.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines @@ -25,7 +25,7 @@ /* Check to see if required defines such as CY_PSOC5A are available */ /* They are defined starting with cy_boot v3.0 */ #if !defined (CY_PSOC5A) - #error Component cy_pins_v1_80 requires cy_boot v3.0 or later + #error Component cy_pins_v1_90 requires cy_boot v3.0 or later #endif /* (CY_PSOC5A) */ /* APIs are not generated for P15[7:6] */ diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_mosi_pin_aliases.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_mosi_pin_aliases.h index 3f51ef6..1bab883 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_mosi_pin_aliases.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_mosi_pin_aliases.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: m_mosi_pin.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_sclk_pin.c b/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_sclk_pin.c index 2fbcbe2..7e79e33 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_sclk_pin.c +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_sclk_pin.c @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: m_sclk_pin.c -* Version 1.80 +* Version 1.90 * * Description: * This file contains API to enable firmware control of a Pins component. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_sclk_pin.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_sclk_pin.h index 2a29717..03edcc5 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_sclk_pin.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_sclk_pin.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: m_sclk_pin.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines @@ -25,7 +25,7 @@ /* Check to see if required defines such as CY_PSOC5A are available */ /* They are defined starting with cy_boot v3.0 */ #if !defined (CY_PSOC5A) - #error Component cy_pins_v1_80 requires cy_boot v3.0 or later + #error Component cy_pins_v1_90 requires cy_boot v3.0 or later #endif /* (CY_PSOC5A) */ /* APIs are not generated for P15[7:6] */ diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_sclk_pin_aliases.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_sclk_pin_aliases.h index 3530ec1..68472d6 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_sclk_pin_aliases.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/m_sclk_pin_aliases.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: m_sclk_pin.h -* Version 1.80 +* Version 1.90 * * Description: * This file containts Control Register function prototypes and register defines diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/placer.log b/PSOC5_SPI_LSM303D.cydsn/codegentemp/placer.log index ac3d7ce..edfb7cc 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/placer.log +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/placer.log @@ -4,9 +4,9 @@ #Version: 1.1 -#Build Date: Dec 5 2012 10:19:42 +#Build Date: Mar 26 2013 11:48:29 -#File Generated: Mar 22 2013 10:33:26 +#File Generated: Jul 25 2013 16:48:56 #Purpose: @@ -18,7 +18,7 @@ Executing : C:\Program Files (x86)\Cypress\PSoC Creator\2.2\PSoC Creator\bin/sjp Softjin Techologies Placer, Version 1.1 -Build Date : Dec 5 2012 10:22:46 +Build Date : Mar 26 2013 11:50:26 D2004: Option and Settings Summary ============================================================= @@ -44,18 +44,18 @@ Phase 2 Phase 3 Design Statistics after Packing - Number of Combinational MCs : 14 - Number of Sequential MCs : 18 - Number of DPs : 3 - Number of Controls : 2 - Number of Status : 3 - Number of SyncCells : 0 + Number of Combinational MCs : 16 + Number of Sequential MCs : 21 + Number of DPs : 5 + Number of Controls : 3 + Number of Status : 4 + Number of SyncCells : 1 Number of count7cells : 1 Device Utilization Summary after Packing - Macrocells : 32/192 - UDBS : 6/24 - IOs : 15/72 + Macrocells : 37/192 + UDBS : 8/24 + IOs : 16/72 D2088: Phase 3, elapsed time : 0.0 (sec) @@ -81,7 +81,7 @@ analysis after routing. ====================================================================== Number of clocks: 7 Clock: Clock_1 | Frequency: 41.7 MHz | Target: 0.9 MHz -Clock: CyBUS_CLK | Frequency: N/A | Target: 24.0 MHz +Clock: CyBUS_CLK | Frequency: 41.7 MHz | Target: 24.0 MHz Clock: CyILO | Frequency: N/A | Target: 0.0 MHz Clock: CyIMO | Frequency: N/A | Target: 3.0 MHz Clock: CyMASTER_CLK | Frequency: N/A | Target: 24.0 MHz @@ -92,15 +92,15 @@ Clock: SPIM_IntClock | Frequency: 60.3 MHz | Target: 2.0 MHz End of Clock Summary ###################################################################### -D2088: Phase 6, elapsed time : 0.0 (sec) +D2088: Phase 6, elapsed time : 0.1 (sec) Phase 7 ###################################################################### Clock Summary ====================================================================== Number of clocks: 7 -Clock: Clock_1 | Frequency: 43.8 MHz | Target: 0.9 MHz -Clock: CyBUS_CLK | Frequency: N/A | Target: 24.0 MHz +Clock: Clock_1 | Frequency: 40.3 MHz | Target: 0.9 MHz +Clock: CyBUS_CLK | Frequency: 41.7 MHz | Target: 24.0 MHz Clock: CyILO | Frequency: N/A | Target: 0.0 MHz Clock: CyIMO | Frequency: N/A | Target: 3.0 MHz Clock: CyMASTER_CLK | Frequency: N/A | Target: 24.0 MHz @@ -113,18 +113,18 @@ Clock: SPIM_IntClock | Frequency: 61.0 MHz | Target: 2.0 MHz D2088: Phase 7, elapsed time : 0.2 (sec) Final Design Statistics - Number of Combinational MCs : 14 - Number of Sequential MCs : 18 - Number of DPs : 3 - Number of Controls : 2 - Number of Status : 3 - Number of SyncCells : 0 + Number of Combinational MCs : 16 + Number of Sequential MCs : 21 + Number of DPs : 5 + Number of Controls : 3 + Number of Status : 4 + Number of SyncCells : 1 Number of count7cells : 1 - Number of IOs : 15 + Number of IOs : 16 Device Utilization Summary - Macrocells : 32/192 - IOs : 15/72 + Macrocells : 37/192 + IOs : 16/72 @@ -141,13 +141,13 @@ analysis after routing. Clock Summary ====================================================================== Number of clocks: 7 -Clock: Clock_1 | Frequency: 43.8 MHz | Target: 1.0 MHz -Clock: CyBUS_CLK | Frequency: N/A | Target: 24.0 MHz +Clock: Clock_1 | Frequency: 38.2 MHz | Target: 1.0 MHz +Clock: CyBUS_CLK | Frequency: 41.7 MHz | Target: 26.3 MHz Clock: CyILO | Frequency: N/A | Target: 0.0 MHz Clock: CyIMO | Frequency: N/A | Target: 3.0 MHz Clock: CyMASTER_CLK | Frequency: N/A | Target: 24.0 MHz Clock: CyPLL_OUT | Frequency: N/A | Target: 24.0 MHz -Clock: SPIM_IntClock | Frequency: 61.0 MHz | Target: 2.2 MHz +Clock: SPIM_IntClock | Frequency: 58.8 MHz | Target: 2.2 MHz ====================================================================== End of Clock Summary @@ -158,5 +158,5 @@ D2088: Phase 8, elapsed time : 0.0 (sec) D2054: Placement of the design completed successfully -I2076: Total run-time: 1.0 sec. +I2076: Total run-time: 1.1 sec. diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/project.h b/PSOC5_SPI_LSM303D.cydsn/codegentemp/project.h index 63c9121..7ac38be 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/project.h +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/project.h @@ -1,6 +1,6 @@ /******************************************************************************* * File Name: project.h - * PSoC Creator 2.2 Component Pack 5 + * PSoC Creator 2.2 Component Pack 6 * * Description: * This file is automatically generated by PSoC Creator and should not @@ -8,11 +8,12 @@ * * ******************************************************************************** - * Copyright 2008-2011, Cypress Semiconductor Corporation. All rights reserved. + * Copyright 2008-2013, Cypress Semiconductor Corporation. All rights reserved. * You may use this file only in accordance with the license, terms, conditions, * disclaimers, and limitations in the end user license agreement accompanying * the software package with which this file was provided. ********************************************************************************/ + #include #include #include @@ -37,6 +38,9 @@ #include #include #include +#include +#include +#include #include #include #include @@ -51,3 +55,4 @@ #include /*[]*/ + diff --git a/PSOC5_SPI_LSM303D.cydsn/codegentemp/warp_dependencies.txt b/PSOC5_SPI_LSM303D.cydsn/codegentemp/warp_dependencies.txt index 287fb1e..689b9b7 100644 --- a/PSOC5_SPI_LSM303D.cydsn/codegentemp/warp_dependencies.txt +++ b/PSOC5_SPI_LSM303D.cydsn/codegentemp/warp_dependencies.txt @@ -20,6 +20,10 @@ C:/Program\ Files\ (x86)/Cypress/PSoC\ Creator/2.2/PSoC\ Creator/psoc/content/cy C:/Program\ Files\ (x86)/Cypress/PSoC\ Creator/2.2/PSoC\ Creator/psoc/content/cyprimitives/CyPrimitives.cylib/not_v1_0/not_v1_0.v : +C:/Program\ Files\ (x86)/Cypress/PSoC\ Creator/2.2/PSoC\ Creator/psoc/content/cycomponentlibrary/CyComponentLibrary.cylib/B_Timer_v2_50/B_Timer_v2_50.v : + +C:/Program\ Files\ (x86)/Cypress/PSoC\ Creator/2.2/PSoC\ Creator/psoc/content/cyprimitives/CyPrimitives.cylib/OneTerminal/OneTerminal.v : + C:/Program\ Files\ (x86)/Cypress/PSoC\ Creator/2.2/PSoC\ Creator/warp/lib/common/stdlogic/rtlpkg.vif : C:/Program\ Files\ (x86)/Cypress/PSoC\ Creator/2.2/PSoC\ Creator/warp/lib/common/stdlogic/cy_psoc3.vif : diff --git a/PSOC5_SPI_LSM303D.cydsn/main.c b/PSOC5_SPI_LSM303D.cydsn/main.c index 30cb10d..7bb9663 100644 --- a/PSOC5_SPI_LSM303D.cydsn/main.c +++ b/PSOC5_SPI_LSM303D.cydsn/main.c @@ -2,7 +2,7 @@ #include //operation codes for Control registers -#define RCR 0x80 //Read Control Register +#define RCR 0x80 //Read Control Register 0x80 #define WCR 0x00 //Write Control Register #define ADDR_MASK 0x80 @@ -16,35 +16,14 @@ uint8 ReadControlRegister(uint8 opcode, uint8 address); void WriteControlRegister(uint8 opcode,uint8 address,uint8 dta); - +void start_acc(uint8 n); +void read_acc(uint8 n); +void check_lsm(uint8 n); +uint8 Read1Byte(); +uint8 Write1Byte(uint8 ucData); void main() { - uint8 i = 0u; - uint8 value = 0; - uint8 low, high; - uint16 two_c = 0; - - uint8 low2, high2; - uint16 two_c2 = 0; - - int inc = 0; - int dir = 1; - char OutputString[7]; - char OutputString2[7]; - uint8 ch; /* Data sent on the serial port */ - - int sign; - int sign2; - - int hundreds; - int tens; - int units; - int accX; - - uint16 dec_value; - - /* Software buffers use internal interrupt functionality to interact with * hardware buffers. Thus global interrupt enable command should be called */ @@ -60,401 +39,120 @@ void main() /* We need to start Character LCD, SPI Master and Slave components */ LCD_Start(); + LCD_ClearDisplay(); + SPIM_Start(); SPIM_ClearRxBuffer(); SPIM_ClearTxBuffer(); SPIM_ClearFIFO(); - CyDelay(15);//Wait for it to finish P-O-S-T - + CyDelay(35);//Wait for it to finish P-O-S-T - // ---------- SS #1 ------------ - SS_Write(0); - CyDelay(15); - value=ReadControlRegister(RCR,0x0F); - CyDelay(15); + // check LSM code response + // check_lsm(0); + + + //Start accel + start_acc(0); + start_acc(1); + start_acc(2); + start_acc(3); + start_acc(4); - UART_1_PutString("\r\n"); - UART_1_PutString("#1 is 0x"); - sprintf(OutputString, "%02x", value); - UART_1_PutString(OutputString); - UART_1_PutString("\r\n"); - CyDelay(100); + + while(1u){ + + + + read_acc(0); + CyDelay(1); + read_acc(1); + //CyDelay(300); + read_acc(2); + //CyDelay(300); + read_acc(3); + //CyDelay(300); + //read_acc(4); + //CyDelay(300); + + //Timer_1_WriteCounter(0); + Timer_1_Start(); + CyDelay(5); + uint16 counter = Timer_1_ReadCounter(); + //Timer_1_WriteCounter(0); + //Timer_1_Stop(); + LCD_Position(0u,0u); + LCD_PrintInt16(counter); + + CyDelay(1000); + } + +} +// ######################################################################################## +// ######################################################################################## +// ######################################################################################## +// ######################################################################################## + + + +void check_lsm(uint8 n) +{ + int value; + char OutputString[7]; - // ---------- SS #2 ------------ - SS_Write(1); - CyDelay(15); - value=ReadControlRegister(RCR,0x0F); + SS_Write(n); CyDelay(15); - UART_1_PutString("#2 is 0x"); - sprintf(OutputString, "%02x", value); - UART_1_PutString(OutputString); - UART_1_PutString("\r\n"); - CyDelay(100); - // ---------- SS #3 ------------ - SS_Write(2); - CyDelay(15); - value=ReadControlRegister(RCR,0x0F); - CyDelay(15); - - UART_1_PutString("#3 is 0x"); - sprintf(OutputString, "%02x", value); - UART_1_PutString(OutputString); - UART_1_PutString("\r\n"); - CyDelay(100); + Write1Byte(0x0F); + SPIM_ClearRxBuffer(); + value = Read1Byte(); + //value = ReadControlRegister(RCR,0x0F); + CyDelay(15); - // ---------- SS #4 ------------ - SS_Write(3); - CyDelay(15); - value=ReadControlRegister(RCR,0x0F); - CyDelay(15); + UART_1_PutString("\r\n"); + UART_1_PutString("#"); + sprintf(OutputString, "%i", n); + UART_1_PutString(OutputString); + UART_1_PutString(" ..."); - UART_1_PutString("#4 is 0x"); sprintf(OutputString, "%02x", value); UART_1_PutString(OutputString); UART_1_PutString("\r\n"); - CyDelay(100); - UART_1_PutString("\r\n"); - // ------------------------------ + LCD_Position(0u,0u); + LCD_PrintString(OutputString); CyDelay(1000); - - SPIM_ClearRxBuffer(); - SPIM_ClearTxBuffer(); - SPIM_ClearFIFO(); - - LCD_ClearDisplay(); - - //Start accel - SS_Write(0); // select SS #1 - CyDelay(10); - WriteControlRegister(WCR, 0x20, 0x67); - CyDelay(10); - - SS_Write(1); // select SS #2 - CyDelay(10); - WriteControlRegister(WCR, 0x20, 0x67); - CyDelay(10); - - SS_Write(2); // select SS #3 - CyDelay(10); - WriteControlRegister(WCR, 0x20, 0x67); - CyDelay(10); - - SS_Write(3); // select SS #4 +} + +void start_acc(uint8 n) +{ + SS_Write(n); CyDelay(10); WriteControlRegister(WCR, 0x20, 0x67); CyDelay(10); - - - while(1u){ - - low = 0; - high = 0; - two_c = 0; - strcpy(OutputString, ""); - - - - // ACC #1 ----------------------------- - SS_Write(0x00); // select SS #2 - CyDelay(5); - LCD_Position(0u,0u); - LCD_PrintString(" #"); - - // READ X - - low = ReadControlRegister(RCR,LSM303D_OUT_X_L_A); // Low - CyDelay(5); - high = ReadControlRegister(RCR,LSM303D_OUT_X_H_A); // High - - - - two_c = (low << 8 | high); - sign = low >> 7; - - if(sign != 0) // negative result, form two's complement - { - two_c ^= 0xFFFF; // low = low XOR 0xFF - two_c ++; - sign = 1; - } - - //two_c >>= 1; // make into whole degrees - - sprintf(OutputString, "%d", two_c); - UART_1_PutString("1,"); - if (sign == 1) { UART_1_PutString("-"); } - if (sign == 0) { UART_1_PutString("+"); } - UART_1_PutString(OutputString); - - low = 0; - high = 0; - two_c = 0; - strcpy(OutputString, ""); - - - - // READ Y - - low = ReadControlRegister(RCR,LSM303D_OUT_Y_L_A); // Low - CyDelay(5); - high = ReadControlRegister(RCR,LSM303D_OUT_Y_H_A); // High - - two_c = (low << 8 | high); - sign = low >> 7; - - if(sign != 0) // negative result, form two's complement - { - two_c ^= 0xFFFF; // low = low XOR 0xFF - two_c ++; - sign = 1; - } - - //two_c >>= 1; // make into whole degrees - - sprintf(OutputString, "%d", two_c); - UART_1_PutString(","); - if (sign == 1) { UART_1_PutString("-"); } - if (sign == 0) { UART_1_PutString("+"); } - UART_1_PutString(OutputString); - - low = 0; - high = 0; - two_c = 0; - strcpy(OutputString, ""); - - // -------- - - - - // READ Z - low = ReadControlRegister(RCR,LSM303D_OUT_Z_L_A); // Low - CyDelay(5); - high = ReadControlRegister(RCR,LSM303D_OUT_Z_H_A); // High - - two_c = (low << 8 | high); - sign = low >> 7; - - if(sign != 0) // negative result, form two's complement - { - two_c ^= 0xFFFF; // low = low XOR 0xFF - two_c ++; - sign = 1; - } - - //two_c >>= 1; // make into whole degrees - - sprintf(OutputString, "%d", two_c); - UART_1_PutString(","); - if (sign == 1) { UART_1_PutString("-"); } - if (sign == 0) { UART_1_PutString("+"); } - UART_1_PutString(OutputString); - - UART_1_PutString("\r\n"); - - low = high = two_c = 0; - strcpy(OutputString, ""); - - - - - // ACC #2 ----------------------------- - SS_Write(0x02); // select SS #3 - CyDelay(5); - - LCD_Position(0u,0u); - - LCD_PrintString(" #"); - - low = ReadControlRegister(RCR,LSM303D_OUT_X_L_A); // Low - CyDelay(10); - high = ReadControlRegister(RCR,LSM303D_OUT_X_H_A); // High - - two_c = (low << 8 | high); - sign = low >> 7; - - if(sign != 0) // negative result, form two's complement - { - two_c ^= 0xFFFF; // low = low XOR 0xFF - two_c++; - sign = 1; - } - - //two_c >>= 1; // make into whole degrees - - sprintf(OutputString, "%d", two_c); - UART_1_PutString("2,"); - if (sign == 1) { UART_1_PutString("-"); } - if (sign == 0) { UART_1_PutString("+"); } - UART_1_PutString(OutputString); - - low = high = two_c = 0; - strcpy(OutputString, ""); - - // READ Y - - low = ReadControlRegister(RCR,LSM303D_OUT_Y_L_A); // Low - CyDelay(5); - high = ReadControlRegister(RCR,LSM303D_OUT_Y_H_A); // High - - two_c = (low << 8 | high); - sign = low >> 7; - - if(sign != 0) // negative result, form two's complement - { - two_c ^= 0xFFFF; // low = low XOR 0xFF - two_c ++; - sign = 1; - } - - //two_c >>= 1; // make into whole degrees - - sprintf(OutputString, "%d", two_c); - UART_1_PutString(","); - if (sign == 1) { UART_1_PutString("-"); } - if (sign == 0) { UART_1_PutString("+"); } - UART_1_PutString(OutputString); - - low = 0; - high = 0; - two_c = 0; - strcpy(OutputString, ""); - - // -------- - - - - // READ Z - low = ReadControlRegister(RCR,LSM303D_OUT_Z_L_A); // Low - CyDelay(5); - high = ReadControlRegister(RCR,LSM303D_OUT_Z_H_A); // High - - two_c = (low << 8 | high); - sign = low >> 7; - - if(sign != 0) // negative result, form two's complement - { - two_c ^= 0xFFFF; // low = low XOR 0xFF - two_c ++; - sign = 1; - } - - //two_c >>= 1; // make into whole degrees - - sprintf(OutputString, "%d", two_c); - UART_1_PutString(","); - if (sign == 1) { UART_1_PutString("-"); } - if (sign == 0) { UART_1_PutString("+"); } - UART_1_PutString(OutputString); - - UART_1_PutString("\r\n"); - - low = high = two_c = 0; - strcpy(OutputString, ""); - - - // ACC #3 ----------------------------- - SS_Write(0x03); // select SS #4 - CyDelay(5); - LCD_Position(0u,0u); - - LCD_PrintString(" #"); - - low = ReadControlRegister(RCR,LSM303D_OUT_X_L_A); // Low - CyDelay(10); - high = ReadControlRegister(RCR,LSM303D_OUT_X_H_A); // High - - two_c = (low << 8 | high); - sign = low >> 7; - - if(sign != 0) // negative result, form two's complement - { - two_c ^= 0xFFFF; // low = low XOR 0xFF - two_c++; - sign = 1; - } - - //two_c >>= 1; // make into whole degrees +} - sprintf(OutputString, "%d", two_c); - UART_1_PutString("3,"); - if (sign == 1) { UART_1_PutString("-"); } - if (sign == 0) { UART_1_PutString("+"); } - UART_1_PutString(OutputString); - - low = high = two_c = 0; - - // READ Y - low = ReadControlRegister(RCR,LSM303D_OUT_Y_L_A); // Low - CyDelay(5); - high = ReadControlRegister(RCR,LSM303D_OUT_Y_H_A); // High - - two_c = (low << 8 | high); - sign = low >> 7; - if(sign != 0) // negative result, form two's complement - { - two_c ^= 0xFFFF; // low = low XOR 0xFF - two_c ++; - sign = 1; - } - - //two_c >>= 1; // make into whole degrees - - sprintf(OutputString, "%d", two_c); - UART_1_PutString(","); - if (sign == 1) { UART_1_PutString("-"); } - if (sign == 0) { UART_1_PutString("+"); } - UART_1_PutString(OutputString); - - low = 0; - high = 0; - two_c = 0; - strcpy(OutputString, ""); - - // -------- - - - - // READ Z - low = ReadControlRegister(RCR,LSM303D_OUT_Z_L_A); // Low - CyDelay(5); - high = ReadControlRegister(RCR,LSM303D_OUT_Z_H_A); // High +void read_acc (uint8 n) +{ + //uint8 i = 0u; + uint8 value = 0; + uint8 low, high; + uint16 two_c = 0; + char OutputString[7]; + int sign; - two_c = (low << 8 | high); - sign = low >> 7; - - if(sign != 0) // negative result, form two's complement - { - two_c ^= 0xFFFF; // low = low XOR 0xFF - two_c ++; - sign = 1; - } - - //two_c >>= 1; // make into whole degrees - - sprintf(OutputString, "%d", two_c); - UART_1_PutString(","); - if (sign == 1) { UART_1_PutString("-"); } - if (sign == 0) { UART_1_PutString("+"); } - UART_1_PutString(OutputString); - - UART_1_PutString("\r\n"); + //uint8 low2, high2; + //uint16 two_c2 = 0; - low = high = two_c = 0; strcpy(OutputString, ""); - - - // ACC #4 ----------------------------- - SS_Write(0x00); // select SS #1 + SS_Write(n); // select SS CyDelay(5); LCD_Position(0u,0u); @@ -464,15 +162,14 @@ void main() CyDelay(5); high = ReadControlRegister(RCR,LSM303D_OUT_X_H_A); // High - two_c = (low << 8 | high); - //two_c = (high << 8 | low) >> 4; + two_c = (high << 8 | low); LCD_Position(1u,0u); - LCD_PrintInt8(low); - LCD_Position(1u,2u); LCD_PrintInt8(high); + LCD_Position(1u,2u); + LCD_PrintInt8(low); - sign = low >> 7; + sign = high >> 7; if(sign != 0) // negative result, form two's complement { @@ -482,9 +179,14 @@ void main() } //two_c >>= 1; // make into whole degrees - + + sprintf(OutputString, "%i", n); + UART_1_PutString("#"); + UART_1_PutString(OutputString); + UART_1_PutString(","); + sprintf(OutputString, "%d", two_c); - UART_1_PutString("4,"); + if (sign == 1) { UART_1_PutString("-"); } if (sign == 0) { UART_1_PutString("+"); } UART_1_PutString(OutputString); @@ -493,6 +195,8 @@ void main() high = 0; two_c = 0; strcpy(OutputString, ""); + + // READ Y @@ -500,8 +204,13 @@ void main() CyDelay(5); high = ReadControlRegister(RCR,LSM303D_OUT_Y_H_A); // High - two_c = (low << 8 | high); - sign = low >> 7; + LCD_Position(1u,5u); + LCD_PrintInt8(high); + LCD_Position(1u,7u); + LCD_PrintInt8(low); + + two_c = (high << 8 | low); + sign = high >> 7; if(sign != 0) // negative result, form two's complement { @@ -532,8 +241,13 @@ void main() CyDelay(5); high = ReadControlRegister(RCR,LSM303D_OUT_Z_H_A); // High - two_c = (low << 8 | high); - sign = low >> 7; + LCD_Position(1u,10u); + LCD_PrintInt8(high); + LCD_Position(1u,12u); + LCD_PrintInt8(low); + + two_c = (high << 8 | low); + sign = high >> 7; if(sign != 0) // negative result, form two's complement { @@ -555,10 +269,10 @@ void main() low = high = two_c = 0; strcpy(OutputString, ""); + + UART_1_PutString("\r\n"); - } - -} +} // This function reads data from Control Register @@ -568,6 +282,8 @@ uint8 ReadControlRegister(uint8 opcode, uint8 address) uint8 controlreg; SPIM_WriteByte(opcode | address ); + //SPIM_WriteByte(address ); + while(!(SPIM_ReadStatus() & SPIM_STS_TX_FIFO_EMPTY)); @@ -575,11 +291,11 @@ uint8 ReadControlRegister(uint8 opcode, uint8 address) while(!(SPIM_ReadStatus() & SPIM_STS_SPI_DONE)); - controlreg=SPIM_ReadByte(); //dummy read + //controlreg=SPIM_ReadByte(); //dummy read controlreg=SPIM_ReadByte(); // real data return controlreg; - }//End of RCR + } void WriteControlRegister(uint8 opcode,uint8 address,uint8 dta){ @@ -611,5 +327,24 @@ int fromHexStr(const char *s) { return n; } +uint8 Read1Byte() +{ + SPIM_ClearRxBuffer(); + Write1Byte(0x00); + return SPIM_ReadByte(); +} + +uint8 Write1Byte(uint8 ucData) +{ + uint8 ucStatus = 0; + while (!(SPIM_ReadStatus() & SPIM_STS_TX_FIFO_EMPTY)) + { + }; + SPIM_WriteByte(ucData); + while (!(SPIM_ReadStatus() & SPIM_STS_SPI_DONE)) + { + }; +} + /* [] END OF FILE */ diff --git a/PSOC5_SPI_LSM303D.cywrk.SB b/PSOC5_SPI_LSM303D.cywrk.SB new file mode 100644 index 0000000..baa93d0 --- /dev/null +++ b/PSOC5_SPI_LSM303D.cywrk.SB @@ -0,0 +1,337 @@ + + + + + + + + + + +Source +Components +Output + + + + +PSOC5_SPI_LSM303D +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D.cydwr +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Header Files +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Header Files\device.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Source Files +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Source Files\main.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Clock_1\Clock_1.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Clock_1\Clock_1.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\cm3gcc.ld +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\Cm3RealView.scat +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\Cm3Start.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\core_cm3.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\core_cm3.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\core_cm3_psoc5.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\CyBootAsmGnu.s +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\CyBootAsmRv.s +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\CyDmac.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\CyDmac.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\CyFlash.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\CyFlash.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\CyLib.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\CyLib.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\cypins.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\cyPm.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\cyPm.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\CySpc.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\CySpc.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\cytypes.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot\cyutils.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\LCD +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\LCD\LCD.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\LCD\LCD.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\LCD\LCD_PM.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\LCD_LCDPort +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\LCD_LCDPort\LCD_LCDPort.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\LCD_LCDPort\LCD_LCDPort.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\LCD_LCDPort\LCD_LCDPort_aliases.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_miso_pin +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_miso_pin\m_miso_pin.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_miso_pin\m_miso_pin.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_miso_pin\m_miso_pin_aliases.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_mosi_pin +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_mosi_pin\m_mosi_pin.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_mosi_pin\m_mosi_pin.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_mosi_pin\m_mosi_pin_aliases.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_sclk_pin +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_sclk_pin\m_sclk_pin.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_sclk_pin\m_sclk_pin.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_sclk_pin\m_sclk_pin_aliases.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_1 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_1\Pin_1.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_1\Pin_1.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_1\Pin_1_aliases.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_2 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_2\Pin_2.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_2\Pin_2.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_2\Pin_2_aliases.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_3 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_3\Pin_3.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_3\Pin_3.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_3\Pin_3_aliases.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_4 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_4\Pin_4.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_4\Pin_4.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_4\Pin_4_aliases.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_5 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_5\Pin_5.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_5\Pin_5.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_5\Pin_5_aliases.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\SPIM +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\SPIM\SPIM.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\SPIM\SPIM.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\SPIM\SPIM_INT.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\SPIM\SPIM_PM.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\SPIM\SPIM_PVT.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\SPIM_IntClock +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\SPIM_IntClock\SPIM_IntClock.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\SPIM_IntClock\SPIM_IntClock.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\SS +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\SS\SS.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\SS\SS.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Timer_1 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Timer_1\Timer_1.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Timer_1\Timer_1.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Timer_1\Timer_1_PM.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\UART_1 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\UART_1\UART_1.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\UART_1\UART_1.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\UART_1\UART_1_BOOT.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\UART_1\UART_1_INT.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\UART_1\UART_1_PM.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cydevice.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cydevice_trm.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cydevicegnu.inc +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cydevicegnu_trm.inc +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cydevicerv.inc +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cydevicerv_trm.inc +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cyfitter.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cyfitter_cfg.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cyfitter_cfg.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cyfittergnu.inc +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cyfitterrv.inc +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\project.h + + +PSOC5_SPI_LSM303D +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\TopDesign.cysch +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D.cydwr +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Header Files +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Header Files\device.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Source Files +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Source Files\main.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Clock_1 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\cy_boot +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\LCD +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\LCD\LCD.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\LCD\LCD.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\LCD\LCD_PM.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\LCD_LCDPort +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\LCD_LCDPort\LCD_LCDPort.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\LCD_LCDPort\LCD_LCDPort.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\LCD_LCDPort\LCD_LCDPort_aliases.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_miso_pin +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_miso_pin\m_miso_pin.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_miso_pin\m_miso_pin.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_miso_pin\m_miso_pin_aliases.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_mosi_pin +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_mosi_pin\m_mosi_pin.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_mosi_pin\m_mosi_pin.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_mosi_pin\m_mosi_pin_aliases.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_sclk_pin +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_sclk_pin\m_sclk_pin.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_sclk_pin\m_sclk_pin.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\m_sclk_pin\m_sclk_pin_aliases.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_1 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_1\Pin_1.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_1\Pin_1.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_1\Pin_1_aliases.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_2 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_2\Pin_2.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_2\Pin_2.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_2\Pin_2_aliases.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_3 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_3\Pin_3.c +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_3\Pin_3.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_3\Pin_3_aliases.h +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Generated_Source\PSoC5\Pin_4 + + + + +PSOC5_SPI_LSM303D +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\TopDesign +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\TopDesign\TopDesign.cysch + + +PSOC5_SPI_LSM303D +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\TopDesign +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\TopDesign\TopDesign.cysch + + + + +PSOC5_SPI_LSM303D +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\Clock_1.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\Cm3Start.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\core_cm3.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\CyBootAsmGnu.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\CyDmac.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\cyfitter_cfg.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\CyFlash.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\CyLib.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\cyPm.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\CySpc.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\cyutils.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\LCD.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\LCD_LCDPort.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\LCD_PM.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\m_miso_pin.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\m_mosi_pin.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\m_sclk_pin.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\main.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\Pin_1.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\Pin_2.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\Pin_3.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\Pin_4.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\Pin_5.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\SPIM.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\SPIM_INT.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\SPIM_IntClock.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\SPIM_PM.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\SS.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\Timer_1.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\Timer_1_PM.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\UART_1.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\UART_1_BOOT.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\UART_1_INT.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\UART_1_PM.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\PSOC5_SPI_LSM303D.elf +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\PSOC5_SPI_LSM303D.hex +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\PSOC5_SPI_LSM303D.map +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D.rpt +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D_timing.html + + +PSOC5_SPI_LSM303D +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\Clock_1.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\Cm3Start.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\core_cm3.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\CyBootAsmGnu.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\CyDmac.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\cyfitter_cfg.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\CyFlash.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\CyLib.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\cyPm.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\CySpc.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\cyutils.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\LCD.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\LCD_LCDPort.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\LCD_PM.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\m_miso_pin.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\m_mosi_pin.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\m_sclk_pin.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\main.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\Pin_1.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\Pin_2.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\Pin_3.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\Pin_4.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\Pin_5.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\SPIM.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\SPIM_INT.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\SPIM_IntClock.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\SPIM_PM.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\SS.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\Timer_1.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\Timer_1_PM.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\UART_1.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\UART_1_BOOT.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\UART_1_INT.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\Listing Files\UART_1_PM.lst +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\PSOC5_SPI_LSM303D.elf +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\PSOC5_SPI_LSM303D.hex +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CortexM3\ARM_GCC_441\Debug\PSOC5_SPI_LSM303D.map +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D.rpt +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D_timing.html + + + + +Datasheet + + + + +PSOC5_SPI_LSM303D +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\PSoC 5 Architecture TRM +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CY8C55 Family Datasheet +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\System Reference Guide v3_40 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CharLCD_v1_90 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\cy_clock_v2_0 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\cy_pins_v1_90 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CyControlReg_v1_70 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\demux_v1_10 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\not_v1_0 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\SPI_Master_v2_40 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Timer_v2_50 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\UART_v2_30 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\ZeroTerminal + + +PSOC5_SPI_LSM303D +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\PSoC 5 Architecture TRM +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CY8C55 Family Datasheet +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\System Reference Guide v3_40 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CharLCD_v1_90 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\cy_clock_v2_0 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\cy_pins_v1_90 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\CyControlReg_v1_70 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\demux_v1_10 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\not_v1_0 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\SPI_Master_v2_40 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\Timer_v2_50 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\UART_v2_30 +PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D\ZeroTerminal + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/PSOC5_SPI_LSM303D.cywrk.Tore b/PSOC5_SPI_LSM303D.cywrk.Tore index 59f089a..aa7793e 100644 --- a/PSOC5_SPI_LSM303D.cywrk.Tore +++ b/PSOC5_SPI_LSM303D.cywrk.Tore @@ -13,7 +13,7 @@ Output - + PSOC5_SPI_LSM303D PSOC5_SPI_LSM303D\PSOC5_SPI_LSM303D
TypeLocationFanoutInstance/NetSourceDestDelay (ns)
macrocell7U(3,5)1Net_439Net_439/clock_0Net_439/q1.250
Route1Net_439Net_439/qNet_422/main_02.596
macrocell4U(3,5)1Net_422Net_422/main_0Net_422/q3.350
Route1Net_422Net_422/qPin_2(0)/pin_input5.506
iocell2P3[1]1Pin_2(0)Pin_2(0)/pin_inputPin_2(0)/pad_out17.068
Route1Pin_2(0)_PADPin_2(0)/pad_outPin_2(0)_PAD 0.000
Net_439/q Pin_4(0)_PAD29.91529.632
@@ -4488,7 +6105,7 @@

Static Timing Analysis

macrocell7U(3,3)U(3,5) 1 Net_439 Net_439/clock_0
macrocell5U(3,3)U(3,5) 1 Net_425 Net_425/main_0 Net_425 Net_425/q Pin_4(0)/pin_input6.6136.330
iocell4
Net_479/q m_sclk_pin(0)_PAD27.67526.767
@@ -4575,7 +6192,7 @@

Static Timing Analysis

macrocell8U(2,3)U(3,5) 1 Net_479 Net_479/clock_0 Net_479 Net_479/q m_sclk_pin(0)/pin_input8.4437.535
iocell15iocell16 P0[6] 1 m_sclk_pin(0)