Compare To Constant
R2026bDeterminar cómo se compara la señal con una constante especificada
Compare To Constant block
To add a block to a model, double-click the canvas and start typing the block name. Then, select the block from the list.
Bibliotecas:
Simulink /
Logic and Bit Operations
HDL Coder /
Logic and Bit Operations
Descripción
El bloque Compare To Constant compara una señal de entrada con una constante. Especifique la constante en el parámetro Constant value. Especifique cómo se compara la entrada con el valor de la constante con el parámetro Operator.
Ejemplos
Exploring Law of Large Numbers Using MATLAB System Block
Use MATLAB System blocks to illustrate the law of large numbers in Simulink.
Puertos
Entrada
Señal de entrada, especificada como un escalar, un vector o una matriz, que se compara con una constante. Primero, el bloque convierte su parámetro Constant value al tipo de datos de entrada y, luego, realiza la operación especificada.
Tipos de datos: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus
Salida
La salida es 0 si la comparación es falsa y 1 si es verdadera.
Tipos de datos: uint8 | Boolean
Parámetros
Este parámetro puede tener estos valores:
==: determina si la entrada es igual a la constante especificada.~
=: determina si la entrada no es igual a la constante especificada.<: determina si la entrada es menor que la constante especificada.<=: determina si la entrada es menor que o igual a la constante especificada.>: determina si la entrada es mayor que la constante especificada.>=: determina si la entrada es mayor que o igual a la constante especificada.
Uso programático
Parámetro de bloque: relop |
| Tipo: vector de caracteres |
Valores: '==' | '~='| '<' |'<='| '>='| '>' |
Predeterminado: '<=' |
Especifique el valor de la constante con la que se compara la entrada.
Uso programático
Parámetro de bloque: const |
| Tipo: vector de caracteres |
| Valor: escalar | vector | matriz | arreglo N-D |
Predeterminado: '3.0' |
Especifique el tipo de datos de la salida, boolean o uint8.
Uso programático
Parámetro de bloque: OutDataTypeStr |
| Tipo: vector de caracteres |
Valores: 'boolean' | 'uint8'
|
Predeterminado: 'boolean' |
Seleccione esta opción para activar la detección de cruces por cero. Para obtener más información, consulte Zero-Crossing Detection.
Uso programático
Parámetro de bloque: ZeroCross |
| Tipo: vector de caracteres |
Valores: 'off' | 'on' |
Predeterminado: 'on' |
Características del bloque
Tipos de datos |
|
Paso directo |
|
Señales multidimensionales |
|
Señales de tamaño variable |
|
Detección de cruce por cero |
|
Más acerca de
Si tiene una licencia de Simulink® Coverage™, el bloque Compare To Constant recibe cobertura de condiciones.
La cobertura de condiciones mide:
Número de veces que la comparación entre la entrada y la constante especificada es verdadera
Número de veces que la comparación entre la entrada y la constante especificada es falsa
Si selecciona la métrica de cobertura Relational boundary (Simulink Coverage), el bloque Compare To Constant recibe cobertura de límites relacionales. Para obtener más información, consulte Relational Boundary Coverage (Simulink Coverage).
Capacidades ampliadas
Generación de código C/C++
Genere código C y C++ mediante Simulink® Coder™.
HDL Coder™ proporciona opciones de configuración adicionales que afectan a la implementación de HDL y la lógica sintetizada.
Este bloque tiene una sola arquitectura de HDL predeterminada.
General
| Propiedad HDL | Descripción |
|---|---|
| ConstrainedOutputPipeline | Número de registros que se deben colocar en las salidas desplazando los retardos existentes en el diseño. La canalización distribuida no redistribuye estos registros. El valor predeterminado es |
| InputPipeline | Número de fases de canalización de entrada que desea insertar en el código generado. La canalización distribuida y la canalización de salida restringida pueden mover estos registros. El valor predeterminado es |
| OutputPipeline | Número de fases de canalización de salida que desea insertar en el código generado. La canalización distribuida y la canalización de salida restringida pueden mover estos registros. El valor predeterminado es |
| SynthesisAttributes | Especifica los atributos de síntesis para los bloques y las señales de salida del bloque del modelo. El código generado en HDL contiene estos atributos. Para obtener más información, consulte SynthesisAttributes (HDL Coder). |
En esta tabla se enumeran los tipos de datos que el puerto de entrada admite para la generación de código HDL:
| Puerto de entrada | Dimensiones | Valores de punto fijo | Valores de punto flotante | Enteros predefinidos | Señales de bus | Valores booleanos | Valores complejos |
|---|---|---|---|---|---|---|---|
| Port_1 | Escalar Vector Matrices de hasta dos dimensiones | Sí | Medio Simple Doble | Sí | No | No | Sí |
El puerto de salida genera el tipo de datos uint8 o boolean, dependiendo del valor del parámetro Output data type.
Para generar código HDL cuando se utilizan tipos de datos de entrada de punto flotante nativo, abra el panel HDL Code Generation > Floating-Point en el cuadro de diálogo Configuration Parameters y seleccione el parámetro Use floating-point. Para obtener más información, consulte Generate Target-Independent HDL Code with Native Floating-Point (HDL Coder).
Cuando utiliza los tipos de datos half, single o double como entradas al bloque, puede usar el parámetro de configuración del modelo Latency Strategy (HDL Coder) para especificar si la latencia de los bloques se asigna a valores de latencia mínimos o máximos al usar bibliotecas de punto flotante nativo. El bloque admite estos valores de latencia de punto flotante nativo:
| Tipo de datos de punto flotante | Configuración de la estrategia de latencia | Ciclos de latencia | Compatibilidad con latencia personalizada |
|---|---|---|---|
double | MIN | 1 | No |
MAX | 3 | ||
single | MIN | 1 | No |
MAX | 3 | ||
half | MIN | 1 | No |
MAX | 2 |
El bloque utiliza implementaciones multiciclo para introducir latencia adicional en el código generado. Para ver la latencia añadida, consulte el modelo generado o el modelo de validación. Consulte Generated Model and Validation Model (HDL Coder).
Puede utilizar estas optimizaciones de HDL Coder para optimizar la velocidad, el área y las E/S.
Optimización de área
| Optimización | Descripción |
|---|---|
| Resource Sharing (HDL Coder) | El uso compartido de recursos es una optimización de área en la que HDL Coder identifica múltiples recursos funcionalmente equivalentes y los reemplaza por un único recurso. |
| Streaming (HDL Coder) | La transmisión es una optimización de área en la que HDL Coder transforma una ruta de datos de vector en una ruta de datos de escalar o en múltiples rutas de datos de vector de menor tamaño. |
Optimización de velocidad
| Optimización | Descripción |
|---|---|
| Specify Distributed Pipelining Settings (HDL Coder) | La canalización distribuida, o reprogramación de registros, es una optimización de velocidad que mueve los retrasos existentes en un diseño para reducir la ruta crítica mientras se mantiene el comportamiento funcional. |
| Clock-Rate Pipelining (HDL Coder) | La canalización de frecuencia de reloj es un marco de optimización que admite otras optimizaciones de velocidad y área para introducir latencia a la frecuencia de reloj. |
| Specify Adaptive Pipelining Settings (HDL Coder) | La optimización de canalización adaptativa crea patrones o combinaciones de bloques con registros que pueden mejorar la frecuencia de reloj alcanzable y reducir el uso de área en las placas FPGA insertando registros de canalización en los bloques del diseño. |
| Estimación de la ruta crítica (HDL Coder) | Para identificar rápidamente la ruta crítica más probable del diseño, utilice la estimación de la ruta crítica. La estimación de la ruta crítica acelera el proceso iterativo para encontrar la ruta crítica. Para saber qué bloques están caracterizados en la estimación de la ruta crítica, consulte Characterized Blocks (HDL Coder). |
Generación de código PLC
Genere código de texto estructurado mediante Simulink® PLC Coder™.
Conversión de punto fijo
Diseñe y simule sistemas en punto fijo mediante Fixed-Point Designer™.
Historial de versiones
Introducido antes de R2006aAhora puede generar código HDL sintetizable para el bloque Compare To Constant cuando utilice tipos de datos de punto flotante nativo, incluyendo half, single o double.
También puede utilizar varias optimizaciones de HDL, como la canalización distribuida, el aplanamiento de jerarquías o el equilibrio de retardos para generar código HDL optimizado para el bloque.
Utilice la propiedad SynthesisAttributes del bloque HDL para especificar los atributos de síntesis para el bloque y sus señales de salida. HDL Coder incluye estos atributos en el código generado en HDL.
Consulte también
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Seleccione un país/idioma
Seleccione un país/idioma para obtener contenido traducido, si está disponible, y ver eventos y ofertas de productos y servicios locales. Según su ubicación geográfica, recomendamos que seleccione: .
También puede seleccionar uno de estos países/idiomas:
Cómo obtener el mejor rendimiento
Seleccione China (en idioma chino o inglés) para obtener el mejor rendimiento. Los sitios web de otros países no están optimizados para ser accedidos desde su ubicación geográfica.
América
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
