Combinação de funções primitivas para síntese de funções majoritárias

Detalhes bibliográficos
Autor(a) principal: Ferraz, Evandro Catelani
Data de Publicação: 2018
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UNESP
Texto Completo: http://hdl.handle.net/11449/180750
Resumo: Devido ao grande avanço da tecnologia e à miniaturização de circuitos, o estudo de sistemas lógicos que podem ser aplicados à nanotecnologia vem sendo realizado de forma abrangente. Para criação de circuitos nanoeletrônicos destacam-se a lógica reversível e a lógica majoritária. Neste trabalho é proposto o algoritmo MPC, utilizado para síntese de lógica majoritária. O algoritmo recebe uma tabela verdade como entrada e retorna uma função majoritária que cobre o mesmo conjunto de mintermos. A criação de uma função de saída válida é realizada a partir da combinação entre funções primitivas previamente otimizadas. Como critério de custo busca-se a geração de funções que tenham a menor quantidade de níveis, seguida da menor quantidade de operadores, inversores e literais. Nesse trabalho também é realizada a comparação do MPC com o algoritmo exact_mig, considerado o melhor algoritmo para síntese de funções majoritárias atualmente. O exact_mig codifica a síntese exata de funções utilizando a quantidade de níveis e operadores como critério de custo. O MPC utiliza dois critérios de custo adicionais, o número de inversores e o número de literais, com o objetivo de otimizar ainda mais os resultados gerados pelo exact_mig. Dessa forma, o MPC busca a síntese de funções que possuam a mesma quantidade de níveis e de operadores, mas com uma quantidade menor de inversores e literais. Testes mostraram que ambos os algoritmos retornam soluções ótimas para todas as funções com 3 variáveis de entrada. Para funções com 4 variáveis, o MPC consegue melhores resultados para 66% das funções e resultados iguais para 11%. Para funções com 5 variáveis de entrada, a partir de uma amostra de 1.000 funções geradas aleatoriamente, o MPC gerou melhores resultados para 58% das funções e resultados iguais para 14%.
id UNSP_c4199fb4d64a39507e82fd475c37a1fd
oai_identifier_str oai:repositorio.unesp.br:11449/180750
network_acronym_str UNSP
network_name_str Repositório Institucional da UNESP
repository_id_str 2946
spelling Combinação de funções primitivas para síntese de funções majoritáriasSynthesis of majority expressions through primitive function combinationSíntese de funções majoritáriasLógica majoritáriaFunções primitivasMajority functions synthesisMajority logicPrimitive functionsDevido ao grande avanço da tecnologia e à miniaturização de circuitos, o estudo de sistemas lógicos que podem ser aplicados à nanotecnologia vem sendo realizado de forma abrangente. Para criação de circuitos nanoeletrônicos destacam-se a lógica reversível e a lógica majoritária. Neste trabalho é proposto o algoritmo MPC, utilizado para síntese de lógica majoritária. O algoritmo recebe uma tabela verdade como entrada e retorna uma função majoritária que cobre o mesmo conjunto de mintermos. A criação de uma função de saída válida é realizada a partir da combinação entre funções primitivas previamente otimizadas. Como critério de custo busca-se a geração de funções que tenham a menor quantidade de níveis, seguida da menor quantidade de operadores, inversores e literais. Nesse trabalho também é realizada a comparação do MPC com o algoritmo exact_mig, considerado o melhor algoritmo para síntese de funções majoritárias atualmente. O exact_mig codifica a síntese exata de funções utilizando a quantidade de níveis e operadores como critério de custo. O MPC utiliza dois critérios de custo adicionais, o número de inversores e o número de literais, com o objetivo de otimizar ainda mais os resultados gerados pelo exact_mig. Dessa forma, o MPC busca a síntese de funções que possuam a mesma quantidade de níveis e de operadores, mas com uma quantidade menor de inversores e literais. Testes mostraram que ambos os algoritmos retornam soluções ótimas para todas as funções com 3 variáveis de entrada. Para funções com 4 variáveis, o MPC consegue melhores resultados para 66% das funções e resultados iguais para 11%. Para funções com 5 variáveis de entrada, a partir de uma amostra de 1.000 funções geradas aleatoriamente, o MPC gerou melhores resultados para 58% das funções e resultados iguais para 14%.Due to technology advancements and circuits miniaturization, the study of logic systems that can be applied to nanotechnology has been progressing steadily. Among the creation of nanoeletronic circuits the reversible and majority logic stands out. This paper proposes the MPC (Majority Primitives Combination) algorithm, used for majority logic synthesis. The algorithm receives a truth table as input and returns a majority function that covers the same set of minterms. The formulation of a valid output function is made with the combination of previously optimized functions. As cost criteria the algorithm searches for a function with the minimum number of levels, followed by the minimum number of gates, inverters, and literals. In this paper it's also presented a comparison between the MPC and the exact_mig, currently considered the best algorithm for majority synthesis. The exact_mig encode the exact synthesis of majority functions using the number of levels and gates as cost criteria. The MPC considers two additional cost criteria, the number of inverters and the number of literals, with the goal to further improve exact_mig results. Therefore, the MPC aims to synthesize functions with the same amount of levels and gates, but with less inverters and literals. Tests have shown that both algorithms return optimal solutions for all functions with 3 input variables. For functions with 4 inputs, the MPC is able to further improve 66% of all functions and achieves equal results for 11%. For functions with 5 input variables, out of a sample of 1.000 randomly generated functions, the MPC further improved 58% of all functions and achieved equal results for 14%.Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES)CAPES: Código de Financiamento 001Universidade Estadual Paulista (Unesp)Silva, Alexandre César Rodrigues da [UNESP]Universidade Estadual Paulista (Unesp)Ferraz, Evandro Catelani2019-02-14T18:25:08Z2019-02-14T18:25:08Z2018-12-21info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/11449/18075000091271933004099080P0porinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UNESPinstname:Universidade Estadual Paulista (UNESP)instacron:UNESP2024-08-05T17:41:56Zoai:repositorio.unesp.br:11449/180750Repositório InstitucionalPUBhttp://repositorio.unesp.br/oai/requestopendoar:29462024-08-05T17:41:56Repositório Institucional da UNESP - Universidade Estadual Paulista (UNESP)false
dc.title.none.fl_str_mv Combinação de funções primitivas para síntese de funções majoritárias
Synthesis of majority expressions through primitive function combination
title Combinação de funções primitivas para síntese de funções majoritárias
spellingShingle Combinação de funções primitivas para síntese de funções majoritárias
Ferraz, Evandro Catelani
Síntese de funções majoritárias
Lógica majoritária
Funções primitivas
Majority functions synthesis
Majority logic
Primitive functions
title_short Combinação de funções primitivas para síntese de funções majoritárias
title_full Combinação de funções primitivas para síntese de funções majoritárias
title_fullStr Combinação de funções primitivas para síntese de funções majoritárias
title_full_unstemmed Combinação de funções primitivas para síntese de funções majoritárias
title_sort Combinação de funções primitivas para síntese de funções majoritárias
author Ferraz, Evandro Catelani
author_facet Ferraz, Evandro Catelani
author_role author
dc.contributor.none.fl_str_mv Silva, Alexandre César Rodrigues da [UNESP]
Universidade Estadual Paulista (Unesp)
dc.contributor.author.fl_str_mv Ferraz, Evandro Catelani
dc.subject.por.fl_str_mv Síntese de funções majoritárias
Lógica majoritária
Funções primitivas
Majority functions synthesis
Majority logic
Primitive functions
topic Síntese de funções majoritárias
Lógica majoritária
Funções primitivas
Majority functions synthesis
Majority logic
Primitive functions
description Devido ao grande avanço da tecnologia e à miniaturização de circuitos, o estudo de sistemas lógicos que podem ser aplicados à nanotecnologia vem sendo realizado de forma abrangente. Para criação de circuitos nanoeletrônicos destacam-se a lógica reversível e a lógica majoritária. Neste trabalho é proposto o algoritmo MPC, utilizado para síntese de lógica majoritária. O algoritmo recebe uma tabela verdade como entrada e retorna uma função majoritária que cobre o mesmo conjunto de mintermos. A criação de uma função de saída válida é realizada a partir da combinação entre funções primitivas previamente otimizadas. Como critério de custo busca-se a geração de funções que tenham a menor quantidade de níveis, seguida da menor quantidade de operadores, inversores e literais. Nesse trabalho também é realizada a comparação do MPC com o algoritmo exact_mig, considerado o melhor algoritmo para síntese de funções majoritárias atualmente. O exact_mig codifica a síntese exata de funções utilizando a quantidade de níveis e operadores como critério de custo. O MPC utiliza dois critérios de custo adicionais, o número de inversores e o número de literais, com o objetivo de otimizar ainda mais os resultados gerados pelo exact_mig. Dessa forma, o MPC busca a síntese de funções que possuam a mesma quantidade de níveis e de operadores, mas com uma quantidade menor de inversores e literais. Testes mostraram que ambos os algoritmos retornam soluções ótimas para todas as funções com 3 variáveis de entrada. Para funções com 4 variáveis, o MPC consegue melhores resultados para 66% das funções e resultados iguais para 11%. Para funções com 5 variáveis de entrada, a partir de uma amostra de 1.000 funções geradas aleatoriamente, o MPC gerou melhores resultados para 58% das funções e resultados iguais para 14%.
publishDate 2018
dc.date.none.fl_str_mv 2018-12-21
2019-02-14T18:25:08Z
2019-02-14T18:25:08Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/11449/180750
000912719
33004099080P0
url http://hdl.handle.net/11449/180750
identifier_str_mv 000912719
33004099080P0
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidade Estadual Paulista (Unesp)
publisher.none.fl_str_mv Universidade Estadual Paulista (Unesp)
dc.source.none.fl_str_mv reponame:Repositório Institucional da UNESP
instname:Universidade Estadual Paulista (UNESP)
instacron:UNESP
instname_str Universidade Estadual Paulista (UNESP)
instacron_str UNESP
institution UNESP
reponame_str Repositório Institucional da UNESP
collection Repositório Institucional da UNESP
repository.name.fl_str_mv Repositório Institucional da UNESP - Universidade Estadual Paulista (UNESP)
repository.mail.fl_str_mv
_version_ 1808128161217511424